fstab commit 和 sysctl 将脏数据写回磁盘的区别

fstab commit 和 sysctl 将脏数据写回磁盘的区别

fstab为了减少磁盘写入次数,使用更改磁盘提交频率和使用sysctl控制何时将脏数据写回磁盘有什么区别?

答案1

在 fstab 中定义文件系统挂载选项:

增加commit值意味着您可能会丢失最近 N 秒的工作(其中 N = 提交间隔),但大多数情况下这不会发生,因为软件仍然可以调用 fsync() 并将其数据写入磁盘,从而覆盖提交设置。 在 fstab 中增加“commit”的优点/缺点

使用 sysctl 定义内核参数(记住使用 /etc/sysctl.d/99-custom.conf 之类的东西保存值,并在启动时应用它们)

有几个关键参数可以调整 Linux 内核虚拟内存子系统的操作以及将脏数据写入磁盘。有关详细信息,请参阅官方 Linux 内核文档。例如:

vm.dirty_ratio = 10 包含包含空闲页和可回收页的总可用内存的百分比,生成磁盘写入的进程本身将开始写出脏数据的页数。 vm.dirty_background_ratio = 5 包含(以包含空闲页和可回收页的总可用内存的百分比)后台内核刷新器线程将开始写出脏数据的页数。 https://wiki.archlinux.org/title/sysctl

相关内容