我有一个安装/dev/sdc1
到/home
.我不知道提前的状态/dev/sdc1
,它可能是“脏”的。我是否需要在挂载文件系统之前运行 fsck.ext4,或者挂载一些检查以防止挂载“脏”文件系统并可能损坏数据?
或者甚至更好,是否有某种方法告诉 mount 在挂载时检查文件系统?
答案1
曾经有一个选项可以ext2
在安装时检查文件系统,但不再支持。如今,引导脚本在安装文件系统之前会检查它们,您的脚本也应该这样做。挂载文件系统仍然会进行检查,以确保挂载文件系统是安全的;但它不会修复任何问题(除了重播日志ext3
或ext4
文件系统之外)。
您应该使用fsck -p
来执行这些检查;该-p
选项告诉e2fsck
您修复任何无需人工干预即可安全修复的内容。如果发生需要人工干预的错误,e2fsck
则会以适当的退出代码退出,并且您的脚本也需要考虑这些。
有关详细信息,请参阅mount(8)
、fsck(8)
和联机帮助页。fsck.ext4(8)
您可能会找到以下源代码ext4_fill_super()
有趣的;这是安装文件系统的代码ext4
。