тл; др. Есть ли способ правильно загрузить программный RAID1 с отсутствующим или неисправным диском (который сначала не был поврежден пользователем)?
Для ясности, загрузка программного RAID1 без жесткого диска возможна. ЕСЛИ вы должным образом выходите из строя диск перед перезагрузкой. Я знаю, что это субъективно, но это не похоже ни на правдоподобное решение, ни на приемлемый ответ. Например; Объект получает удар по питанию, и жесткий диск выходит из строя в то же время, когда отключается электричество. Попытка загрузиться с поврежденного жесткого диска, который не был «правильно» поврежден, приведет к тому, что система перейдет в аварийный режим.
Я прочитал много сообщений здесь и на других форумах, в которых рекомендовалось установить grub на все разделы или пересобрать grub вручную, добавить безошибочно
к /etc/fstab
варианты или другие, казалось бы, простые решения; но реальность такова, что ни одна из этих рекомендаций не сработала.
Хотя я смирился с тем, что это невозможно, что-то в этом не так просто. Итак, я смотрю, есть ли у кого-нибудь еще эта проблема или есть ли решение этой проблемы.
Моя среда:
У меня более старая материнская плата, которая не поддерживает UEFI, поэтому у меня загружается устаревший режим/MBR.
ОПЕРАЦИОННЫЕ СИСТЕМЫ:
кошка /etc/redhat-релиз
Red Hat Enterprise Linux Workstation версии 7.6 (Maipo)
Ядро:
uname r
3.10.0-957.el7.x86_64
мдадм:
mdadm — версия
mdadm — v4.1-rc1 22 марта 2018 г.
Мой RAID - это RAID1 на трех дисках. (сда, сдб, сдк
) и есть 4 раздела
md1 - / загрузка
md2 - /дом
мд3 - /
md4 - поменять местами
Я установил grub на все разделы и убедился, что все загрузочные разделы имеют флаг загрузки.
fdisk /dev/sd[a,b,c]
все показывают *
в поле загрузки рядом с соответствующим разделом
-- и --
grub2-установить /dev/sd[a,b,c]
(в виде отдельных команд с результатом «успешно установлено»).
Воспроизведение проблемы:
- Выключите систему со всеми дисками, назначенными для RAID, и RAID полностью заработает.
- Удалить жесткий диск
- Система питания включена
Результаты:
Система загрузится после grub. Gdm попытается отобразить экран входа в систему, но примерно через 20 секунд он потерпит неудачу и перейдет к аварийной консоли. В «нормальной» системе отсутствует много частей. Например; /boot и /etc не существуют. Похоже, что нет никаких сообщений о панике ядра или проблем, отображаемых в dmesg
.
Опять же, ключ здесь; RAID должен быть полностью собран, выключен и удален диск. Если вы правильно выведете диск из строя и удалите его из RAID, вы сможете загрузиться без диска.
Пример:
mdadm --manage /dev/md[1,2,3,4] --fail /dev/sda[1,2,3,4]
(как отдельные команды)
mdadm --manage /dev/md[1,2,3,4] --remove /dev/sda[1,2,3,4]
(как отдельные команды)
Я знаю, что это кажется тривиальным, но мне еще предстоит найти жизнеспособное решение для загрузки системы с поврежденным RAID1. Вы могли бы подумать, что это должна быть простая проблема с простым решением, но это не так.
Будем очень признательны за любую помощь, вклад или предложения.