![ext[34] `commit` 选项和文件系统完整性](https://linux22.com/image/1104390/ext%5B34%5D%20%60commit%60%20%E9%80%89%E9%A1%B9%E5%92%8C%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E5%AE%8C%E6%95%B4%E6%80%A7.png)
我运行的是相当新且原始的 10.10 安装,大约一个月前在 Acer Aspire 5742 笔记本电脑上从头开始安装的。我使用 openbox 作为窗口管理器,既不运行 KDE 也不运行 Gnome 桌面堆栈。我还没有弄清楚如何在电池电量不足时让系统休眠,所以我偶尔会遇到断电的情况。
我注意到,当我的笔记本电脑切换到电池电源时,我的 ext* 分区会使用选项重新安装commit=600
。
当我切换回 AC 时,有另一组重新安装commit=0
。
/var/log/syslog
这从以下条目中可以看出
Mar 31 14:48:48 gatsby kernel: [414710.189306] EXT4-fs (dm-0): re-mounted. Opts: errors=remount-ro,commit=600
Mar 31 14:48:48 gatsby kernel: [414710.324137] EXT4-fs (dm-1): re-mounted. Opts: commit=600
Mar 31 14:48:48 gatsby kernel: [414710.749636] EXT4-fs (dm-2): re-mounted. Opts: commit=600
Mar 31 16:35:58 gatsby kernel: [421128.882072] EXT4-fs (dm-0): re-mounted. Opts: errors=remount-ro,commit=0
Mar 31 16:35:58 gatsby kernel: [421129.083283] EXT4-fs (dm-1): re-mounted. Opts: commit=0
Mar 31 16:35:59 gatsby kernel: [421129.724136] EXT4-fs (dm-2): re-mounted. Opts: commit=0
手册如此解释与 ext3 文件系统相关的选项mount
的含义:count
commit=nrsec
Sync all data and metadata every nrsec seconds.
The default value is 5 seconds. Zero means default.
这到底是什么意思?这似乎意味着写入操作可能会被缓存长达 10 分钟。这是否意味着文件系统可能会损坏,或者如果我的电池电量耗尽,某些更改可能无法保存?
答案1
它不应该导致文件系统损坏(毕竟它是一个日志文件系统),但它可能会导致工作丢失。
出现这种行为的原因是磁盘旋转会消耗电量,而通过在执行日志提交之前等待更长时间,可能可以一次性执行多次写入,从而减少旋转次数并延长电池寿命。
如果这给您带来了问题,您可以在使用电池时更改提交间隔。更改由包执行,因此在(名称无关紧要)pm-utils
下创建一个文件,其中包含以下内容:/etc/pm/config.d/
JOURNAL_COMMIT_TIME_BAT=300
以上将超时设置为 5 分钟。您可以根据需要进行调整。