Intereting Posts
Зачем было необходимо перезапустить веб-сервер apache для копирования файлов через php на недавно смонтированный файл? apt-get обновление с поврежденными источниками https Системное программирование: как собрать информацию? Есть ли инструмент для динамического перенаправления вывода на новый файл по запросу Нет perldoc для POSIX? Создание программ Ubuntu для Fedora через «chroot» новая вкладка bash на Arch Linux начинается в домашнем каталоге Debian Stretch / Gnome – экран моего ноутбука просто повернут; нужно вернуться к нормальной жизни Распределение Linux с менеджером пакетов «yum» Linux с гостевыми компьютерами VM в режиме киоска / bin / sh – echo >> не работает как ожидалось Пакет checkinstall конфликтует с python Необходимо разбить файл на несколько файлов, но убедиться, что сгруппированные данные остаются в одном файле zsh с аргументами guestunmount: невозможно записать cd в каталог, но разрешения в порядке.

MDADM – аварийное восстановление или переход из состояния, в которое я поместил свой массив RAID5

Короче говоря, для моего первого streamа здесь у меня установлен программный массив RAID5 следующим образом: 4 дисковых устройства с разделом linux-RAID на каждом. Эти диски: / dev / sda1 / dev / sdb1 / dev / sdd1 / dev / sde1

/ dev / md0 – устройство raid5 с зашифрованным LVM. Я использую cryptsetup, чтобы открыть устройство, затем vgscan и lvcan -a, чтобы отобразить мои тома.

Вчера я обнаружил, что / dev / sdd1 не работает. Вот шаги, за которыми я следовал:

0. удалить неисправный диск

# mdadm --remove /dev/md0 /dev/sdd1 

1. выполнить проверку на неисправный диск

 mdadm --examine /dev/sdd1 

Я получил ошибку “не удалось прочитать метаданные”.

2. попытался прочитать таблицу разделов

Я использовал parted и обнаружил, что мой раздел Linux-RAID пропал, и когда я попытался воссоздать его (надеясь, что смогу повторно добавить диск), я получил «ваше устройство не доступно для записи»

Итак, было ясно: этот жесткий диск мертв.

3. Извлеките жесткий диск из моего дела (плохие вещи следуют)

Поэтому я попытался извлечь / dev / sdd1 из своего дела, не зная, какой из 4 дисков это было. Поэтому я отключил один кабель SATA, чтобы узнать, что я только что отключил / dev / sde1; Я подключил его и отключил следующий, хороший улов! это был / dev / sdd1

4. что я сделал ?! грустное лицо

с помощью :

 # mdadm --detail /dev/md0 

Я понял, что / dev / sde1 оставил массив помеченным как «удаленный». Я попытался добавить его, не используя –re-add, но:

 mdadm --add /dev/md0 /dev/sde1 

/ proc / mdstat показал мне процесс перестройки, и mdadm –detail / dev / md0 отобразил / dev / sde1 как «запасной»; Я знаю, что мог сделать что-то ужасное здесь.

Я попытался удалить / dev / sde1 из массива и использовать –re-add, но mdadm сказал мне, что он не может этого сделать, и посоветовал мне остановить и собрать массив

5. Куда пойти отсюда?

Перво-наперво, я жду новый жесткий диск, чтобы заменить неисправный. Как только я получу его и настрою как новое устройство Linux-RAID, известное как / dev / sdd1, мне придется остановить массив (тома LVM больше не монтируются, очевидно, cryptsetup закрыл зашифрованное устройство, но mdadm еще не смог остановить массив). Я думал о перезагрузке всей системы и работе с нуля. Вот то, что я понял, я должен сделать:

 # mdadm --stop /dev/md0 # mdadm --stop /dev/md0 # mdadm --examine /dev/sd*1 # mdadm --assemble --scan --run --verbose 

Я прочитал, что без параметра –run mdadm не будет сканировать поврежденный массив.

В лучшем случае: / dev / sde1 распознается процессом повторной сборки, а новый / dev / sdd1 используется для восстановления предыдущего неисправного. Я бы не потерял никаких данных и буду счастлив.

Худший и наиболее распространенный сценарий: повторная assembly массива не может восстановить / dev / sde1, и я должен начать с пустого нового массива.

Я что-то здесь упускаю? Что я должен рассмотреть из этой процедуры?

С наилучшими пожеланиями из Франции

Итак, мне удалось получить полное восстановление, благодаря этой ссылке

Я сделал следующее:

  1. Я заменил неисправный диск и перезапустил сервер.
  2. Затем я отформатировал новый диск как тип раздела Linux-RAID.

     # mdadm --examine /dev/sda1 /dev/sdb1 /dev/sdd1 /dev/sde1 

Затем, основываясь на приведенной выше ссылке, я (заново) создал массив, основываясь на информации, предоставленной командой –examine.

 # mdadm --create /dev/md0 --level=5 --raid-devices=4 --chunk=512 --name=server:0 /dev/sda1 /dev/sdb1 missing /dev/sde1 --assume-clean 

Как указано в этой ссылке, –assume-clean добились цели! Он избежал «запасного» состояния из / dev / sde1 и использовал его как активную часть нового массива.

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

  1. Затем я добавил новое устройство в этот новый массив:

     # mdadm --add /dev/md0 /dev/sde1 

Сервер начал перестраиваться (потребовалось 6 часов для 10 ТБ), и после этого я принудительно проверил целостность всего массива (что также заняло 6 часов)

Я выздоровел все, и я очень рад!