我在硬盘驱动器上运行Ext4,说实话,我并不真正相信该驱动器,因为它很旧并且有一些坏块。我的驱动器上没有不必要的数据,所以如果它明天就消失了,那就没什么大不了的了。
但是,我想知道它是否/何时开始消失,并以只读方式重新安装。是否有任何选项可以在Ext4 fs上启用额外的文件检查?(我不在乎它是否会使文件系统变慢。)
我在硬盘驱动器上运行Ext4,说实话,我并不真正相信该驱动器,因为它很旧并且有一些坏块。我的驱动器上没有不必要的数据,所以如果它明天就消失了,那就没什么大不了的了。
但是,我想知道它是否/何时开始消失,并以只读方式重新安装。是否有任何选项可以在Ext4 fs上启用额外的文件检查?(我不在乎它是否会使文件系统变慢。)
Answers:
由于3.6内核ext4支持元数据校验和(您还需要e2fsprogs 1.43+),但尚不清楚此功能的稳定性如何。另外,您可以使用该journal_checksum
功能挂载ext4文件系统,但是...
...似乎在过去的某个时候人们希望将其设置为默认选项,但由于问题而未发生此更改。
但是,我想知道它是否/何时开始消失,并以只读方式重新安装。
如果问题是坏块,则以只读方式安装将不会为您节省任何费用-请查看此处的第一段,并注意与读取错误相关的问题。
如果没有物理读取磁盘就无法检测到坏块,因此,就像在黑暗的房间中寻找设置的鼠标陷阱一样,也无法避免检查时潜在的问题。如果您认为磁盘出现故障,请定期在所有分区上umount
运行e2fsck -c
;如果这是您的根文件系统,并且您需要使用例如liveCD来执行此操作,请执行此操作。按照手册页;
-c此选项使e2fsck使用badblocks(8)程序对设备进行只读扫描,以查找任何坏块。 如果找到任何坏块,则将它们添加到坏块inode中,以防止将它们分配给文件或目录。
如果这些数据块包含数据,某个时候可能会在/lost+found
目录中保存一个挽救的版本,我不确定。
请注意,这可能需要一些时间。如果存在坏块,则扫描可能会触发I / O问题,从而将整个系统锁定数小时,因此,如果您舒适地走了一段时间,就可以这样做。
同样,一般而言,某些实用程序可以监视情况的不同方面,并允许您采取适当的措施。
例如,smartctl
来自smartmontools软件包的工具将使您可以访问某些驱动器的内置SMART状态。
您还可以使用以下tune2fs
命令提高对特定目标进行文件系统检查的频率。例如,似乎tune2fs -c 1 target
可以确保每次在启动引导驱动器之前对其进行检查。
smartctl
也可以执行磁盘的内部自检机制,例如使用smartctl -t long /dev/sdX
。
illuminÉ的好处。最好使smartd在后台运行并定期检查故障。
除此之外,您可以使用
e2fsck -fvy -c -c -C0 /dev/sda1
-f Force checking even if the file system seems clean.
-v Verbose mode.
-y Assume an answer of `yes' to all questions
-C0 write completion information to stdout
-c -c If this option is specified twice, then the
bad block scan will be done using a non-destructive
read-write test.
此非破坏性读写测试(-c -c
)可让您知道是否存在读取失败。
但是,这需要很多时间。
因此,在购买新驱动器之前,它应该是一种运输解决方案。