Mdadm
將錯誤的超級塊歸零後恢復 RAID5 陣列
我在 4 個磁碟 sda1、sdb1、sdd1 和 sde1 上有一個 raid5 陣列。sdd1 已被刪除,但它是一個健康的驅動器。在嘗試重新添加它時,我不小心將 sdb1 的超級塊歸零。
sdb1 的數據與 sda1 和 sde1 一致,只是缺少它的超級塊。
是否可以在該設備上恢復超級塊並重新組裝陣列(降級)而不會失去任何數據?
下面是“mdadm -E /dev/sd{a,d,e}1”的輸出。
我是否正確讀取了 sde1 是設備 0、sdd1 是設備 2 而 sda1 是設備 3 的輸出?那麼這意味著 sdb1 是設備 1。我可以使用以下命令重新創建陣列而不會失去數據:
$ sudo mdadm --create /dev/md0 --assume-clean --level=5 --raid-devices=4 /dev/sde1 /dev/sdb1 missing /dev/sda1
/dev/sda1: Magic : a92b4efc Version : 1.2 Feature Map : 0x1 Array UUID : 81a36846:cf4f0489:219e2546:b1f5b90e Name : cowbell:0 Creation Time : Sun Sep 25 20:24:46 2011 Raid Level : raid5 Raid Devices : 4 Avail Dev Size : 3907025920 (1863.02 GiB 2000.40 GB) Array Size : 5860538880 (5589.05 GiB 6001.19 GB) Data Offset : 1024 sectors Super Offset : 8 sectors State : clean Device UUID : a0abbc72:f8bb1e2b:e8f81f5c:ed62a979 Internal Bitmap : 8 sectors from superblock Update Time : Tue Jul 23 18:05:09 2013 Checksum : 9f46a56 - correct Events : 717820 Layout : left-symmetric Chunk Size : 512K Device Role : Active device 3 Array State : AA.A ('A' == active, '.' == missing) /dev/sdd1: Magic : a92b4efc Version : 1.2 Feature Map : 0x1 Array UUID : 81a36846:cf4f0489:219e2546:b1f5b90e Name : cowbell:0 Creation Time : Sun Sep 25 20:24:46 2011 Raid Level : raid5 Raid Devices : 4 Avail Dev Size : 3907027053 (1863.02 GiB 2000.40 GB) Array Size : 5860538880 (5589.05 GiB 6001.19 GB) Used Dev Size : 3907025920 (1863.02 GiB 2000.40 GB) Data Offset : 2048 sectors Super Offset : 8 sectors State : active Device UUID : 79f5632d:46d5c083:a1c0130c:b83b0654 Internal Bitmap : 8 sectors from superblock Update Time : Tue Jul 23 17:42:02 2013 Checksum : a78d6f5b - correct Events : 717392 Layout : left-symmetric Chunk Size : 512K Device Role : Active device 2 Array State : AAAA ('A' == active, '.' == missing) /dev/sde1: Magic : a92b4efc Version : 1.2 Feature Map : 0x1 Array UUID : 81a36846:cf4f0489:219e2546:b1f5b90e Name : cowbell:0 Creation Time : Sun Sep 25 20:24:46 2011 Raid Level : raid5 Raid Devices : 4 Avail Dev Size : 3907027053 (1863.02 GiB 2000.40 GB) Array Size : 5860538880 (5589.05 GiB 6001.19 GB) Used Dev Size : 3907025920 (1863.02 GiB 2000.40 GB) Data Offset : 2048 sectors Super Offset : 8 sectors State : clean Device UUID : 6abd9160:c8ae382c:e6c73d01:37ac057b Internal Bitmap : 8 sectors from superblock Update Time : Tue Jul 23 18:05:09 2013 Checksum : 9f5d8fa6 - correct Events : 717820 Layout : left-symmetric Chunk Size : 512K Device Role : Active device 0 Array State : AA.A ('A' == active, '.' == missing)
除了備份之外,您可能還需要考慮
dd
在嘗試任何恢復之前只製作磁碟的完整副本。話雖如此,看起來您正在正確的軌道上進行恢復而不會失去數據。您正在正確解釋設備編號。該命令看起來像您需要的。
在這裡查看我的答案- 這些東西對數據失去具有驚人的彈性,並且超級塊的破壞不會損害以相同幾何形狀重建陣列的能力(參見該答案中的測試 4)。