MDADM рейд "потерян" после перезагрузки

1166
Patrick Pruneau

Я сейчас немного напуган, поэтому надеюсь, что вы сможете пролить свет на мою проблему!

Несколько недель назад я купил новый 2TB диск и решил установить программный RAID 5 с MDADM на моем HTPC (диск sdb, sdcи sde). Поэтому я быстро выполнил поиск в Google и нашел этот учебник

Затем я продолжаю следовать инструкции, создаю новый массив, наблюдаю /proc/mdstatза состоянием и т. Д., И через пару часов мой массив был завершен! Радость везде, все было хорошо, и мои файлы были легко доступны.

НО!!

Вчера мне пришлось выключить мой HTPC, чтобы сменить вентилятор. После перезагрузки, о боже мой, мой RAID не монтировался. И так как я довольно "нуб" с mdadm, я полностью потерян.

Когда я делаю fdisk -l, вот результат:

xxxxx@HTPC:~$ sudo fdisk -l /dev/sdb /dev/sdc /dev/sde Disk /dev/sdb: 1.8 TiB, 2000398934016 bytes, 3907029168 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disklabel type: gpt Disk identifier: FD6454FC-BD66-4AB5-8970-28CF6A25D840  Device Start End Sectors Size Type /dev/sdb1 2048 3907028991 3907026944 1.8T Linux RAID   Disk /dev/sdc: 1.8 TiB, 2000398934016 bytes, 3907029168 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes Disklabel type: gpt Disk identifier: F94D03A1-D7BE-416C-8336-75F1F47D2FD1  Device Start End Sectors Size Type /dev/sdc1 2048 3907029134 3907027087 1.8T Linux filesystem   Disk /dev/sde: 1.8 TiB, 2000398934016 bytes, 3907029168 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 4096 bytes 

Я более чем смущен! По некоторым причинам, не только 2 из 3 дисков имеют разделы, эти разделы я и удалил в первую очередь, когда следовал руководству. Причина, которая /dev/sdb1отображается как «Linux RAID», заключается в том, что после выполнения другого решения на суперпользователе ( новый mdadm RAID исчезает после перезагрузки ), но безуспешно.

И вот результат после выполнения mdadm --assemble:

xxxxx@HTPC:/etc/mdadm$ sudo mdadm --assemble --scan -v mdadm: looking for devices for /dev/md0 mdadm: No super block found on /dev/dm-1 (Expected magic a92b4efc, got 00000000) mdadm: no RAID superblock on /dev/dm-1 mdadm: No super block found on /dev/dm-0 (Expected magic a92b4efc, got 0000040e) mdadm: no RAID superblock on /dev/dm-0 mdadm: cannot open device /dev/sr0: No medium found mdadm: No super block found on /dev/sdd1 (Expected magic a92b4efc, got 00000401) mdadm: no RAID superblock on /dev/sdd1 mdadm: No super block found on /dev/sdd (Expected magic a92b4efc, got d07f4513) mdadm: no RAID superblock on /dev/sdd mdadm: No super block found on /dev/sdc1 (Expected magic a92b4efc, got 00000401) mdadm: no RAID superblock on /dev/sdc1 mdadm: No super block found on /dev/sdc (Expected magic a92b4efc, got 00000000) mdadm: no RAID superblock on /dev/sdc mdadm: No super block found on /dev/sdb1 (Expected magic a92b4efc, got 00000401) mdadm: no RAID superblock on /dev/sdb1 mdadm: No super block found on /dev/sdb (Expected magic a92b4efc, got 00000000) mdadm: no RAID superblock on /dev/sdb mdadm: No super block found on /dev/sda1 (Expected magic a92b4efc, got f18558c3) mdadm: no RAID superblock on /dev/sda1 mdadm: No super block found on /dev/sda (Expected magic a92b4efc, got 70ce7eb3) mdadm: no RAID superblock on /dev/sda mdadm: /dev/sde is identified as a member of /dev/md0, slot 2. mdadm: no uptodate device for slot 0 of /dev/md0 mdadm: no uptodate device for slot 1 of /dev/md0 mdadm: added /dev/sde to /dev/md0 as 2 mdadm: /dev/md0 assembled from 1 drive - not enough to start the array. 

Я уже проверил с помощью smartmontools и все диски "здоровы". Можно ли что-нибудь сделать, чтобы сохранить мои данные? После некоторого исследования кажется, что учебник был не лучшим, но ... черт, все работало какое-то время.

ОБНОВЛЕНИЕ: по счастливой случайности я нашел точную команду, которую использовал для создания массива, в своей истории bash_history!

sudo mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/sdb /dev/sdc /dev/sde 

Может быть, просто может быть, я должен запустить его снова, чтобы мой RAID вернулся к жизни? Единственное, что меня беспокоит, это вернуть «некоторые» данные с этих дисков. Я сделаю чистую настройку листа после этого.

1
Сумасшедшая идея, как это .... "prehapse" Я должен удалить таблицу GPT на одном диске (например, / dev / sdb), чтобы она была "такой же", как / dev / sde? Я не помню, установил ли я диск в алфавитном порядке (черт!), Но я сделал ту же команду, что и в учебнике. Поэтому я нацелился на / dev / sdb, а не на / dev / sdb1 точно. Patrick Pruneau 6 лет назад 0
Я бы сказал, что вы должны разделить ваши диски одинаково на место, немного меньше, чем диск. В настоящее время все три диска разные; даже два с разделами не совпадают. Я думаю, что это часть проблемы, с которой вы как-то столкнулись (чистое предположение). Если используются разделы, они ВСЕ должны быть разделами Linux RAID. Вы можете сделать это без перегородок из моего понимания, я просто лично не сделал бы этого. Damon 6 лет назад 0
Ну, это странная часть. Я не использовал раздел, и я (почти) уверен, что удалил разделение, которое было на дисках до создания raid кластера. Так что я не имею ни малейшего представления, почему они все еще там ..... Patrick Pruneau 6 лет назад 0
Вы официально "записали" таблицы разделов на диски? Это не автоматически, так как вы работаете через команды. То есть вы видели вывод fdisk другим после разметки? Я подозреваю, что таблицы разделов не были написаны. Damon 6 лет назад 0
Вы имеете в виду, когда я создаю рейд? Если так, то нет, так как я не знал! Но если вы говорите о «старом» разделе, я использовал Gparted (я знаю, плохой GUI, плохой!) И применил изменения. Patrick Pruneau 6 лет назад 0

2 ответа на вопрос

1
Menion

К сожалению, ваш массив рейдов исчез. Я понимаю, что вы предоставили вывод fdisk -l после того, как попробовали другое решение, которое, к сожалению, стерло один из HD. Однако и другой находится в плохой форме. После создания RAID-массива вы всегда должны генерировать файл mdadm.conf, но это не является критическим моментом, поскольку mdadm должен иметь возможность восстанавливать RAID-массив, начиная с суперблока, который отсутствует на двух из трех HD. Я не совсем уверен, что произошло, но я подозреваю, что вам просто нужно было собрать его из-за отсутствия mdadm.conf, в то время как вы начали вводить сумасшедшие команды, которые, к сожалению, уничтожили ваш массив

Мой mdadm.conf был "правильно" настроен (насколько я знаю). Я следовал инструкции и добавил эту строку в файл: ARRAY / dev / md0 metadata = 1.2 name = HTPCPAT: 0 UUID = a31cc1b9: 502dc85a: 3c507697: d6859f80 Я действительно считаю, что что-то где-то забыл (например, полностью очистить мой диск перед созданием массив), но я не могу смириться с тем, что все работало за пару недель до перезагрузки. Patrick Pruneau 6 лет назад 0
Можете ли вы вспомнить, какие команды вы использовали, пытаясь собрать массив после того, как обнаружили, что он не подключен после перезагрузки? Еще одна важная информация: если это была самая первая перезагрузка после создания массива Menion 6 лет назад 0
Да, это была первая перезагрузка. И если я правильно помню, «первая» команда, которую я дал, была что-то вроде «sudo mdadm --assemble --scan -v». Patrick Pruneau 6 лет назад 0
Хорошо. Во всяком случае, я боюсь, что массивы теряются из-за какой-либо возможности самовосстановления. Возможно, что какой-то профессиональный сервис восстановления мог бы извлечь некоторые данные, но обычно это слишком дорого для RAID-массивов. Menion 6 лет назад 0
Я был немного напуган, и это было бы ответом :( Любая хорошая рекомендация о том, как правильно настроить это время в этот раз? Из того, что я понимаю, «лучшим способом» было бы создать 3 раздела одинакового размера на каждом разделе и создать массив на тех разделах. Это верно? Patrick Pruneau 6 лет назад 0
https://www.digitalocean.com/community/tutorials/how-to-create-raid-arrays-with-mdadm-on-ubuntu-16-04 Следуйте инструкциям создания RAID5, но сначала вы должны обнулить суперблок HD определен как член RAID. Также убедитесь, что все работает после перезагрузки. И нет, рекомендуется сделать RAID на физическом устройстве не разделом Menion 6 лет назад 0
@Menion Разделы, которые немного меньше полного размера диска, помогают гарантировать, что диск для замены будет достаточного размера. Если новый диск будет даже на 1 блок меньше, диск не сможет быть добавлен в массив. Если вы используете раздел немного меньшего размера, вы допускаете такие непредвиденные обстоятельства. Damon 6 лет назад 0
0
Patrick Pruneau

Что ж, получается, что в последний ура, я попытался повторно запустить команду «создать», которую я ранее использовал, чтобы сначала построить массив, и ..... угадайте, кто получил данные обратно !!

Допустим, я собираюсь сделать резервную копию всех этих хороших вещей и перезапустить мой массив с нуля. Спасибо всем за помощь!