это глупо, такое случалось раньше, и я понял, как это исправить, и все было нормально.
Я использую 4 диска SATA по 500 ГБ в массиве RAID-5 на сервере Ubuntu 7.10. Один из дисков вышел из строя (на самом деле я думаю, что это один из разъемов в отсеке для горячей замены), и он работал без трех дисков, пока я нахожу жесткий диск на замену или дополнительно диагностирую проблему.
Теперь, прежде чем вы начнете читать дальше, НЕТ, у меня нет резервных копий, и информация не очень важна, просто приятно иметь.
Как бы то ни было, однажды у меня была какая-то икота HW, возможно, отключилось электричество или что-то в этом роде, и у меня были проблемы с восстановлением массива. Дело не в том, что один из дисков вышел из строя, а в другом.
Я смог просто добавить обратно второй «отказавший» диск, и через несколько минут я снова заработал. Может, мне пришлось провести какую-то проверку файловой системы, я не знаю.
Я потратил часы, если не дни, выясняя, как это сделать в прошлый раз, и с тех пор забыл.
Суть проблемы в том, что если я запускаю mdadm --examine на sdb, sdc и sdd, sdd думает, что он все еще является частью массива, но в информации суперблока sdb и sdc он перечисляет sdd как удаленный.
sda - это диск, который вышел из строя задолго до этого, он правильно указан во всех из них как неисправный удаленный.
TIA. Рассматриваемого сервера нет в Интернете, поэтому невозможно C&P вывод различных команд на форум.
Я знаю, сейчас многие из вас, наверное, думают, что я дурак или того хуже. Однако я припоминаю, что как только я выяснил, какие команды нужно запускать, это была довольно простая процедура, и она отлично работала.
Если диски фактически не вышли из строя, а стали временно недоступными или по какой-то другой причине рассинхронизировались, вы можете попытаться принудительно запустить рейд в режиме онлайн, игнорируя номер изменения / метку времени каждого участника.
Поступая так, вы рискуете повредить данные, особенно если вы не знаете, какой из дисков отключился последним, но похоже, что у вас мало выбора.
Прочтите о различных способах использования параметра --force на странице руководства mdadm.
Если один из дисков действительно вышел из строя, а другой не синхронизирован, вы все равно можете вывести рейд в оперативный режим, указав «отсутствует» в качестве идентификатора устройства для отказавшего диска, в сочетании с опцией --force. Это должно начать рейд как деградированный.
Если al else не работает, вы можете использовать raidextract: http://www.chiark.greenend.org.uk/~peterb/linux/raidextract/
Должен ли RAID5 восстанавливаться после двухдисковый неудача? Я думал, что этого не должно было быть. Вероятно, вы ищете команды для горячего удаления и горячего добавления дисков в массив raid.
mdadm --remove /dev/md0 /dev/sdX
mdadm --add /dev/md0 /dev/sdX
ты мог бы попробовать mdadm --create /dev/md0 --level=5 --raid-devices=4 missing /dev/sd{b..d}
который я адаптировал из Тема LinuxQuestions и поток Ubuntu
Вы могли сделать:
mdadm --stop /dev/md0
mdadm --assemble --force /dev/md0 /dev/sdX /dev/sdY...
просто не забудьте указать диски в том же порядке, в котором они были созданы, и с такими же размерами полос и т. д. Также я предлагаю сначала создать образы дисков.
Спасибо за помощь. Я попытался явно указать элементы, с которыми нужно выполнить сборку, и получал такие ошибки, как «отсутствует: устройство не найдено»
Итак, я попытался просто принудительно запустить массив, и это сработало как шарм. Не нужно запоминать, в каком порядке были устройства или что-то в этом роде.