昨晚我不小心dd
覆盖了 RAID5 阵列中驱动器的前约 20GB。当我注意到时,我修复了阵列
$ mdadm --fail /dev/md127 /dev/sdb
$ mdadm --remove /dev/md127 /dev/sdb
$ mdadm --zero-superblock /dev/sdb
$ mdadm --add /dev/md127 /dev/sdb
但花了一些时间,因为它是 3TB 磁盘。由于dd
打印出复制的字节数,我确切地知道需要重建多少驱动器。有没有办法只修复这些字节?
答案1
理论上是的:您可以创建一个自定义的写入意图位图,或者告诉mdadm
仅从磁盘的开头组装一个数组,或者可能是一些我没有想到的技巧。
实际上,尝试这样做会带来很高的数据丢失风险:您绕过了系统的保护措施,因此它无法保护您免受磁盘混淆、错误指定阵列开始位置或其他用户错误的影响。让正常的重建过程运行更安全。