在调查故障驱动器时(参见。为什么 SMART 通过了,但 RAW 读取错误率却显示失败?)。
我对所有驱动器都执行了 SMART 测试。
我的 SSD 内置驱动器使用时显示以下错误smartmonctl
SMART Self-test log structure revision number 1
Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
# 1 Short offline Completed: read failure 90% 521 2023520
# 2 Short offline Completed: read failure 90% 521 2023520
如何根据偏移量确定哪个文件受到了影响?
答案1
如果您愿意花点时间,您可以简单地尝试读取系统中的所有文件,看看是否有任何关于 I/O 错误的抱怨。
请记住,所查看的区域可能根本没有分配给任何文件。
答案2
最后我自己找到了答案。所以,这是有可能的。
echo '1613920' > error_blocks # The value from LBA_of_first_error column less the number of blocks in previous partitions
sudo fsck_hfs -B error_blocks /dev/disk1s2 # In my case, the filesystem is on /dev/disk1s1
结果如下:
1 blocks to match:
** /dev/rdisk1s2
** Root file system
Executing fsck_hfs (version diskdev_cmds-557.3~1).
** Verifying volume when it is mounted with write access.
Journal need to be replayed but volume is read-only
** Checking Journaled HFS Plus volume.
fsck_hfs: Volume is journaled. No checking performed.
fsck_hfs: Use the -f option to force checking.
所以那里没有文件!
但是,此方法需要确认,因为即使检查了许多块,我仍无法使用此命令显示路径。