如何检测低使用率驱动器中的坏扇区?

如何检测低使用率驱动器中的坏扇区?

我有很多 Linux 机器。它们是数据中心的专用服务器(例如 Hetzner)。有一些非常古老的文件从未被系统中的任何进程访问过。

我定期测试硬盘的 SMART 状态。这足以确保我不会丢失数据吗?

由于服务器是生产服务器,因此使系统脱机并运行磁盘检查实用程序通常很困难。

我如何可靠地查看这些驱动器的完整运行状况?

答案1

在Linux中我们有

 badblocks -s -v /dev/sda

此命令很不错,因为它不会导致任何停机。只是会因额外的工作量而减慢驱动器的速度。

唯一的坏消息是您必须自己手动检查结果。

对于某些文件系统类型,您可以手动输入生成的坏扇区列表。但是,我手头没有这些信息。

除此之外,您还必须对所有文件使用 SHA2 哈希。有一个名为 QuickPar 的奇偶校验程序,您可以用它生成恢复数据。但是,我不确定这是否适用于 Linux。

我相信 BTRFS 有一些内置功能可以进行校验和扫描,但我不确定它可以恢复什么类型的错误。

最好的办法是使用硬件,例如 RAID6 解决方案。获取坏扇区,更换驱动器,其他驱动器将重建丢失的数据。

我相信 ZFS 有一个软件 RAID 模式,但是与 RAID 6 一样,您必须移走所有数据,重新格式化,创建新的 ZFS raid 设置,然后恢复数据。

相关内容