![如何彻底检查通过 USB 连接的硬盘的坏扇区(在 Raspbian 中)](https://linux22.com/image/6122/%E5%A6%82%E4%BD%95%E5%BD%BB%E5%BA%95%E6%A3%80%E6%9F%A5%E9%80%9A%E8%BF%87%20USB%20%E8%BF%9E%E6%8E%A5%E7%9A%84%E7%A1%AC%E7%9B%98%E7%9A%84%E5%9D%8F%E6%89%87%E5%8C%BA%EF%BC%88%E5%9C%A8%20Raspbian%20%E4%B8%AD%EF%BC%89.png)
我有一个 RaspberryPi 1 Model B 和一个,运行 Raspbian Wheezy。我最近买了一个新硬盘 -西部数据 WD10JPVX。我想彻底检查它的健康状况,如果有坏扇区。所以我有Anker USB 外壳和一个有源 USB3 集线器我可以将硬盘连接到 Pi。
那么我该如何运行测试呢?我可以使用哪个应用程序/工具?我不介意诊断需要几个小时。
答案1
常用的工具是badblocks
,它是E2fsprogs。如果您的驱动器以前从未使用过,您可以使用以下命令运行破坏性测试
badblocks -w -s /dev/sdb
(假设您的驱动器显示为/dev/sdb
)。-w
启用破坏性写入测试,并-s
显示进度信息。
答案2
badblocks -w
请注意,尽管存在“软错误”,驱动器仍可能通过。运行坏块后,您应该检查dmesg
重试警告,并smartctl -a -d /dev/...
查看驱动器是否发现坏扇区并设法隐藏它们。您不希望看到任何智能失败,并且 的原始值Reallocated_Sector_Ct
应该为零。 (对于 Current_Pending_Sector 也是如此,尽管我不知道如果没有坏块显示坏扇区,它如何会非零)。
https://lime-technology.com/forum/index.php?topic=23792.msg210208#msg210208
https://lime-technology.com/forum/index.php?topic=23792.msg210176#msg210176
最后一点对于硬盘驱动器来说也是如此。对于固态硬盘来说,很难说有如此自信,尽管可能值得一看是否有一个智能计数器可以估计硬盘额定磨损百分比。
另外,对于 SSD,您可能希望将测试大小增加到 4Mb 之类的大小。 ( badblocks -w -b 4096 -c 1024
)。强制在整个驱动器上写入 1024 字节不会对 SSD 的使用寿命产生良好的影响...我不知道是否有更好的技术用于 SSD 的老化测试。
如今,您应该始终使用最小块大小 ( -b
) 4096。