我有一块磁盘处于 raid 4 中,是从之前的 raid 1 重塑而来的。根据 mdadm 的检查模式,该磁盘在 3 块磁盘的 raid 4 阵列中被标记为备用磁盘。我希望通过这种方式恢复该磁盘上的数据,因为我认为该磁盘上应该有完整的数据副本。这是否可行?我必须使用哪些命令来挂载和恢复我的数据?这是我尝试恢复的磁盘的输出:
/dev/sdc:
Magic : a92b4efc
Version : 1.2
Feature Map : 0x44
Array UUID : 6da3242c:77685ea5:83fa962f:8ea9c60d
Name : lenovo1:0 (local to host lenovo1)
Creation Time : Sun Mar 27 13:17:54 2022
Raid Level : raid4
Raid Devices : 3
Avail Dev Size : 3906699264 sectors (1862.86 GiB 2000.23 GB)
Array Size : 3906699264 KiB (3.64 TiB 4.00 TB)
Data Offset : 264192 sectors
New Offset : 263936 sectors
Super Offset : 8 sectors
State : clean
Device UUID : c7fd4138:36e51d1a:6c61078a:5543a13d
Reshape pos'n : 96435328 (91.97 GiB 98.75 GB)
Delta Devices : 1 (2->3)
Update Time : Sat Jan 20 10:33:21 2024
Bad Block Log : 512 entries available at offset 264 sectors
Checksum : 20e13a01 - correct
Events : 0
Chunk Size : 64K
Device Role : spare
Array State : A.. ('A' == active, '.' == missing, 'R' == replacing)
背景:几个月前,我弄乱了我的存储系统,并将 RAID 阵列级别从 1 更改为 4。这触发了重塑。我试图通过重新启动系统来停止更改,因为 mdadm 没有像其他在线资源建议的那样通过在 /sys 接口中回显冻结等来监听手动输入的停止信号。我关闭了系统,因为我认为我的 mdadm 有问题,并认为系统关闭会正常结束重塑。这停止了重塑,由于 mdadm 挂起过程,systemd 无法完全重新启动。我手动关闭了我的系统并重新启动,它试图继续重塑,在我进一步尝试阻止它重塑时(重塑需要 24 小时),我停止了阵列,重建后它会出错,并将一个磁盘置于故障状态,另一个磁盘处于备用状态。我也无法挂载文件系统,并且一直被这个问题困扰。过去几个月我一直很忙,所以我现在发帖。