Ext4 - 如何启用额外的健全性、校验和、验证、任何类型的测试?

Ruc*_*t88 8 filesystems ext4 checksum e2fsck

我在硬盘驱动器上运行 Ext4,老实说,我不太信任驱动器,因为它很旧并且有一些坏块。我在驱动器上有不必要的数据,所以如果它明天死了,那就没什么大不了的。

但是,我想知道它是否/何时开始死亡,并以只读方式重新安装。是否有任何选项可以在 Ext4 fs 上启用额外的文件检查?(我不在乎它是否会使文件系统变慢。)

Ano*_*non 8

由于 3.6 内核 ext4 支持元数据校验和(您还需要 e2fsprogs 1.43+),但尚不清楚此功能的稳定性如何。此外,您可以使用该journal_checksum功能挂载您的 ext4 文件系统,但是...

...似乎在过去的某个时候人们希望将其设为默认选项,但由于问题,这种更改并未发生。


gol*_*cks 5

但是,我想知道它是否/何时开始死亡,并以只读方式重新安装。

如果问题是坏块,则以只读方式挂载不会为您节省任何东西——请查看此处的第一段并注意与读取错误相关的问题。

没有对磁盘进行物理读取,就无法检测坏块,因此,就像在暗室中寻找设置的捕鼠器一样,检查时无法避免潜在的问题。如果您认为磁盘出现故障,请定期在所有分区上umount运行e2fsck -c;如果这是您的根文件系统并且您需要使用例如 liveCD 来执行此操作,则执行此操作。根据手册页;

-c此选项使 e2fsck 使用 badblocks(8) 程序对设备进行只读扫描以查找任何坏块。 如果发现任何坏块,则将它们添加到坏块 inode 以防止将它们分配给文件或目录。

如果这些块包含数据,则在某个时候可能会在/lost+found目录中找到一个回收的版本,我不确定。

请注意,这可能需要一些时间。如果有坏块,扫描可能会触发 I/O 问题,使整个系统锁定数小时,因此请在您走开一段时间后执行此操作。