![我可以使用 Linux 上的软件 RAID 1 做些什么来解决暂时的“坏”扇区吗?](https://linux22.com/image/608637/%E6%88%91%E5%8F%AF%E4%BB%A5%E4%BD%BF%E7%94%A8%20Linux%20%E4%B8%8A%E7%9A%84%E8%BD%AF%E4%BB%B6%20RAID%201%20%E5%81%9A%E4%BA%9B%E4%BB%80%E4%B9%88%E6%9D%A5%E8%A7%A3%E5%86%B3%E6%9A%82%E6%97%B6%E7%9A%84%E2%80%9C%E5%9D%8F%E2%80%9D%E6%89%87%E5%8C%BA%E5%90%97%EF%BC%9F.png)
基本上,我有两个完全相同的硬盘,它们都运行良好,只是它们没有达到所处环境所需的抗震能力。(我猜测这是原因所在)。磁盘通过 md raid/linux 软件 raid 配置为 RAID 1。然后使用 LVM 对 RAID 进行分区。
问题是每隔几天,其中一个磁盘上的 1-5 个连续扇区就会开始出现 I/O 错误,但 hdparm --write-sector 可以将它们恢复到正常工作状态,不会出现任何问题。磁盘不会在 SMART 中记录重新分配或待处理的扇区,因此我只能假设它能够成功修复原始扇区。
我想做的是找到某种方法让 RAID 自动返回到其他磁盘以读取无法读取的扇区。目前,错误最终会达到文件系统级别并损坏它,有时非常严重。它拖得越久,问题就越严重。
我相信磁盘不会濒临故障,因为它们在这种情况下运行了不到 2 年。问题在大约 6 个月后出现。
我尝试过在更可靠的磁盘上使用优先写入一个磁盘的标志(通常用于 SSD),但无济于事。还有什么我可以尝试的吗?如果内置 raid 更强大,我准备尝试替代文件系统,例如 btrfs。我也可以使用英特尔板载“假”raid(H67 芯片组),但我猜它相比之下很差。更换磁盘非常不可行,因为盒子位于可能位于另一个国家的地方
答案1
那么,当其中一个旋转磁盘发生故障时,您会怎么做?(正如所有旋转磁盘最终都会做的那样)
我会告诉你:你会解决你的问题的。
当第一个旋转磁盘“发生故障”时(眨眨眼,推推搡搡:)用 SSD 替换发生故障的磁盘。一旦 raid 重建,让第二个磁盘“发生故障”并用 SSD 替换它。
这有点像 BOFH,但它会起作用,而您将成为英雄。