У меня есть массив raid5 на 4 диска, sda1, sdb1, sdd1 и sde1. 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 в этом ответе).
Я бы попытался убедиться, что основные физические диски синхронизированы, прежде чем продолжить воссоздание MD-устройства, предполагая, что оно чистое. Вы можете сделать это с помощью
mdadm -E /dev/sd[abc]1 | grep Event
Events : 0.53120
Events : 0.53108
Events : 0.53120
Выходные данные показывают, что sda и sdc синхронизируются, пока sdc задерживается.