У меня есть программный массив RAID 5 на базе Linux. SMART только что начал присылать мне электронные письма с жалобами на то, что на одном из 5 дисков текущий счетчик ожидающих секторов равен 9, а также количество не исправляемых в автономном режиме счетчика 9. Я много работал с Google и, похоже, согласен с тем, что если я запишите секторы нулями, диск их переназначит и все будет хорошо.
Я действительно хотел отследить, какие файлы были затронуты, но у меня возникли трудности с сопоставлением, так как у меня есть 5 дисков в RAID 5 с шифрованием LUKS сверху и, наконец, LVM поверх этого. Ни одно из проведенных мною исследований не помогло мне разобраться в этой путанице.
В конце концов, мой план состоял в том, чтобы просто вывести диск из строя и снова добавить его, чтобы восстановить массив.
Прежде чем я это сделал, я провел «длительные» тесты на другом диске в массиве. Все были идеальными, кроме одного, у которого было 82,82,36,764 перераспределенных секторов.
Итак, 2 из 5 дисков имеют проблемы.
На данный момент я немного не понимаю, как лучше всего избавиться от этих ошибок, если это вообще возможно.
Есть ли у кого-нибудь совет? Я рад заменить вышедшие из строя диски, где это необходимо, но сначала хотел бы попытаться восстановить данные.
Это будет общий процесс. Увидеть mdraid
справочную страницу и вашу собственную локальную конфигурацию для использования точных команд, если вы их еще не знаете.
Молись.
Убедитесь, что ваша резервная копия актуальна. При необходимости запустите его вручную. Если вы этого не сделаете иметь резервные копии, сделай один сейчас.
Выведите из строя диск с незавершенным сектором и некорректируемыми секторами в автономном режиме. Другой диск с перераспределенными секторами будет жить немного дольше и, надеюсь, достаточно долго, чтобы завершить этот процесс, но этот диск находится в той точке, где он может убить весь ваш массив.
Заменить привод. Аппаратно. Разбейте новый диск на разделы и добавьте его в массив mdraid.
Восстановите массив и дождитесь завершения восстановления. В более новых версиях mdraid восстановление начнется автоматически.
Повторите процесс со вторым диском.
Вы можете принудительно проверить и восстановить массив с помощью команды (от имени пользователя root). Измените в соответствии с вашими потребностями (введите имя массива):
echo repair > /sys/block/md0/md/sync_action
Конечно, вам действительно нужно создать резервную копию данных перед тем, как начать. И вам следует подумать о замене поврежденного жесткого диска на новый.
Вы можете скопировать схему раздела с диска на диск с помощью такой команды, как
sfdisk -d /dev/sda | sfdisk /dev/sdb
Конечно, перед выполнением этого дважды проверьте имена дисков. Вы же не хотите стирать раздел на хорошем диске.
Добавление раздела / диска в массив описано в руководстве по mdadm
. Удачи.