Ext3和Ext4的默认日志提交间隔为5秒,可以使用’commit’挂载选项进行更改.
每当我在使用Ext3 / 4的Linux VM中进行任何文件操作时,我可以验证我的VirtualBox主机确实在5秒后(或我为commit mount选项设置的任何值)闪烁其磁盘图标,如’echo test> my_new_file”
(取决于挂载选项,这可能只写文件元数据,或文件数据后跟其元数据,但这是一个单独的问题)
XFS的默认日志提交间隔是多少?可以配置吗?
我找不到任何记录的XFS挂载选项.使用XFS,我确实看到在创建新文件后磁盘图标可能不会闪烁超过10秒.
正如预期的那样,如果我在看到磁盘活动之前崩溃内核,则在重启后my_new_file将不存在.此外,正如预期的那样,如果我在看到磁盘活动后崩溃内核,这通常是XFS日志提交活动,所以如果我此时崩溃内核,重启后my_new_file将存在,但是将为空.
解决方法
从
kernel documentation不是挂载选项,但显然是以下sysctl设置:
fs.xfs.xfssyncd_centisecs
(Min:100
Default:3000
Max:720000
)
The interval at which the filesystem flushes Metadata
out to disk and runs internal cache cleanup routines.
所以默认值是3000/100 = 30秒.