FSCK 在扫描时是否会修复/标记坏扇区?是否可以从偏移量恢复扫描?

FSCK 在扫描时是否会修复/标记坏扇区?是否可以从偏移量恢复扫描?

系统:macOS 10.14.6

概述:

系统中的一个硬盘出现问题,我怀疑旧硬盘快要死了。我想检查它是否有坏扇区。它使用 Mac OS 扩展(日志式)文件系统。所以我开始使用 fsck_hfs 扫描磁盘:

bash-3.2# fsck_hfs -S -E /dev/disk0

但即使经过超过 12-13 个小时的过夜,它也只扫描了 1TB 驱动器的大约 66%:

** /dev/rdisk0 (NO WRITE)  
Scanning entire disk for bad blocks  
Scanning offset 6615812001408 of 1000204886016 (66%)

当系统需要时我不得不中断它。

疑虑

  1. FSCK 在扫描时是否标记坏扇区(或者仅在扫描完成后才这样做?)

  2. 如果第一种情况为真,是否有任何选项可以从状态消息中指定的偏移量(即从块 6615812001408)恢复扫描?

  3. 有没有更好的系统工具来扫描磁盘是否有坏扇区,并且在操作必须中断时支持恢复?

答案1

  1. FSCK 在扫描时是否标记坏扇区(或者仅在扫描完成后才执行此操作?)

---> 不,驱动器上的坏扇区是驱动器永久损坏的标志。除非您有理由相信您的驱动器将这些扇区错误地标记为坏扇区,否则您无法“修复”它们。这意味着驱动器的一部分已损坏,无法再可靠地读取和/或写入。

  1. 如果第一种情况为真,是否有任何选项可以从状态消息中指定的偏移量(即从块 6615812001408)恢复扫描?

---->无法恢复,因为程序需要知道文件系统的完整状态才能工作。您可以输入^Z停止该程序,然后运行fg以恢复它,或者只是不管它。

  1. 有没有更好的系统工具来扫描磁盘是否有坏扇区,并且在操作必须中断时支持恢复?

---->要检查磁盘的物理状况,最好安装 smartmontools

Sudo yum install smartmontools

使用该smartctl命令可以读出该状态。例如,从第一个磁盘调用读取所有属性

sudo smartctl --all /dev/sda

希望这可以帮助。

相关内容