mount 的 dirsync 选项有什么用?

mount 的 dirsync 选项有什么用?

今天我偶然发现了这个mount选项:

dirsync 文件系统内的所有目录更新应同步完成。这会影响以下系统调用:creat、link、unlink、symlink、mkdir、rmdir、mknod 和 rename。

此选项有哪些实际用例?我什么时候想使用dirsync而不是sync

答案1

sync做一切事情dirsync,甚至更多。不幸的是,这个“更多”会严重影响性能。启用后sync,所有磁盘 I/O 都会立即写入磁盘。使用 时dirsync,仅立即写入目录操作。

我见过的唯一可能需要使用dirsync而不是sync网络文件系统的情况。当多个盒子在共享目录中工作时,它们可能会尝试同时创建文件。一个盒子将创建该文件,但如果没有dirsync打开,该文件对其他盒子尚不可见。打开dirsync后,该文件将立即显示,因此其他服务器至少知道它存在并且现在可以对其执行文件锁定。

相关内容