如果在写入 RAID 1 阵列期间断电,并且两个磁盘最终处于不同的状态,会发生什么情况?操作系统会检测到阵列不同步并重建吗?或者我会认为一切正常,直到文件系统因两个磁盘处于不同的状态而崩溃?我会丢失所有数据吗?
我特别感兴趣的是 Linux 软件 RAID 如何处理这个问题。
答案1
mdadm 将检测执行读取或写入操作时发生的错误。
根据发行版的不同,通常有一个 cron 作业会同步整个阵列(在 /etc/cron.d/mdadm),它应该可以捕获任何电源故障等导致的错误。
答案2
使用命令“ cat /proc/mdstat
”你可以查看磁盘是否不工作或出现故障
如果你看到类似这样的内容:
md0 : active raid1 sda1[0]
1951732 blocks super 1.2 [1/2] [U_]
其中一个失败了,(在这个例子中是 sdb1)
您可以使用命令“ ”搜索错误dmesg
,如果没有什么特别的,您可以尝试用以下命令将失败的重新连接到阵列:
mdadm --manage /dev/md0 --add /dev/sdb1
如果一切正常,命令“ cat /proc/mdstat
”检查 raid 重建状态:
md0 : active raid1 sda1[0] sdb1[1]
1951732 blocks [2/1] [U_]
[=>...................] recovery = 9.9% (1951732/1951732) finish=2.8min speed=127535K/sec