отвечая на мой собственный вопрос через 2 года...
я закончил тем, что просто экспортировал все с этого сервера и форматировал его, но недавно снова столкнулся с этой проблемой и решил заняться ею в лоб.
все, что я упоминаю здесь делается:
- CentOS 7 с
ml
ядро ELRepo
.
- оба устройства были добавлены к
raid1
во время установки ОС (вот так) и все разделы были установлены поверх raid1 (/boot
,/
и swap
). LVM или нет, похоже, не имеет значения в этой теме.
- как и установки CentOS 7 по умолчанию, он поставляется с
GRUB2
вместо устаревшего GRUB
большой различия как большую часть документации можно найти в интернете, относится к v1.
- Мои настройки НЕ содержат
EFI
раздел. Из того, что я нашел, EFI не работает поверх RAID, поэтому большое внимание здесь, как процедура ниже не будет работать правильно, если у вас есть EFI.
мне стало ясно, что проблема заключалась в том, что CentOS устанавливал только загрузчик (GRUB2) на первое физическое устройство. Видимо, он использует крошечный MSDOS
раздел (является ли раздел правильной терминологией? Может быть, "флаг"?), который не может работать поверх RAID. Из-за этого даже простая замена дисков приводит к невозможности загрузки системы, как если бы дополнительный диск у него есть полная копия системы, у нее нет загрузчика.
теперь рассмотрим решение, которое, надеюсь, достаточно простое: скопируйте загрузчик с главного диска на вторичный диск.
я не был уверен, как действовать, поскольку я не знал точно, как загрузчик вызывает устройства. Может быть, просто зеркальное отображение загрузчика с первого вызовет конфликты, поэтому возможно, мне пришлось инвертировать записи, чтобы он знал, какое устройство на самом деле который.
исследуя это, я нашел решение для использования dd
для копирования загрузчика на второй диск. Я нашел сообщение от пользователя о том, что они всегда это делали и всегда работали, но для меня по какой-то причине этого не было.
пытаясь лучше понять, как работает GRUB2, я обнаружил, что он включает в себя инструмент "установить", который легко добавляет загрузчик на нужное устройство, и вуаля это было именно то, что мне нужно!
Все, что я должен был сделать было:
grub2-install /dev/sdb
затем после замены дисков, система все еще загружается, как ожидалось! Половина миссии выполнена.
затем после подтверждения обоих устройств может загрузиться, я просто должен был удалить неисправный диск (теперь 'СДБ') из массива (документации это можно найти в интернете, она включает в себя маркировочные устройства, как не удалось и затем удаляя его из массива) и замены его на новый диск, а затем, наконец, добавив, что обратно до адреса проживания и, надеюсь, следует начните синхронизацию автоматически (вы можете следить за прогрессом с помощью watch cat /proc/mdstat
).
кроме того, не забудьте запустить grub2-install
снова на новом устройстве после завершения.
надеюсь, это может помочь кому-то еще сталкивается с той же проблемой.
если у вас есть раздел EFI, вам, вероятно, придется найти способ скопировать его в начало вторичного устройства (dd
должны сделать работу, хотя я понятия не имею, какие параметры вы должны дать его).