Загрузка падает в оболочку и требует ручного выполнения lvm vgchange -ay

Вопрос или проблема

Похоже, это аналогичная проблема с зависанием загрузки, требующим ручного выполнения ‘lvm vgchange -ay’, но это касается установки Ubuntu 24.04 (и ни одно из других предложений не кажется работающим)

Это сервер Dell Poweredge T30, использующий программный RAID-контроллер Intel для создания 4-дискового RAID 5, разбитого на два раздела на каждом диске; один для загрузочного раздела и один для корневого раздела. Изначально на нем была установлена Ubuntu 16.04, но за годы ее обновляли, и сегодня он был обновлен с 22.04 до 24.04.

После перезагрузки он зависает с несколькими сообщениями «устройство md126 все еще используется»; я не знаю, являются ли они нормальными, потому что обычно эта часть загрузки проходит достаточно быстро, и я не успеваю прочитать это на рабочей конфигурации. Однако, md126 — это RAID, который содержит мою группу корневых томов. Эта группа томов не активируется автоматически на новом ядре и переводит меня в командную оболочку, говоря, что vg_root-Root не может быть найден.

Тем не менее, быстрая команда lvm pvscan быстро находит ее, а lvm vgchange -ay успешно активирует ее, и я могу выйти из оболочки и загрузиться нормально. Поскольку это предполагается как безголовый сервер, это немного раздражает.

Я пытался добавить правило udev в /etc/udev/rules.d/85-lvm2.rules со строкой:

SUBSYSTEM=="block", ACTION=="add|change", ENV{ID_FS_USAGE}="raid", RUN+="watershed sh -c '/sbin/lvm vgscan; /sbin/lvm vgchange -a y'"

А также добавил /sbin/lvm vgchange -ay в /etc/initramfs-tools/scripts/local-block/lvm2 и /usr/share/initramfs-tools/scripts/local-block/lvm2.

Тем не менее, все это приводит к одному и тому же результату.

Я также обновил метаданные группы томов, так как они были устаревшими (используя vgck --updatemetadata vg_root), так как grub жаловался на это, когда я запускал update-grub, но это не повлияло. Я также поиграл с изменением /etc/initramfs-tools/initramfs.conf, чтобы иметь как большинство модулей, так и только зависимости, но ни один из вариантов не показал изменений.

Загрузка с ядра 5.15 – последнего из 22.04 – проходит успешно.

(Предложено в зависание загрузки, требующим ручного выполнения ‘lvm vgchange -ay’)

Пока я немного в затруднении. Ни одно из старых предложений не работает, и я действительно не хотел бы сносить и устанавливать систему заново, так как, хотя у меня есть резервные копии, я действительно не хочу времени простоя для их восстановления, так как они не на самом быстром хранилище.

Ответ или решение

Ваш вопрос о загрузке Ubuntu 24.04 на сервере Dell Poweredge T30 с использованием программного RAID Intel и LVM действительно требует внимательного анализа. Проблема заключается в том, что Volume Group (VG) не активируется автоматически во время загрузки, и это связано с конфигурацией вашей системы и изменениями, внесенными в ядро при обновлении.

Вот некоторые шаги, которые помогут вам решить эту проблему:

1. Проверьте конфигурацию загрузчика GRUB

Убедитесь, что в конфигурации GRUB указано правильное использование LVM. Для этого откройте файл /etc/default/grub и убедитесь, что в параметрах присутствуют строки, касающиеся LVM. После внесения изменений выполните команду:

sudo update-grub

2. Обновление Initramfs

Вы уже пробовали обновлять файл initramfs, но иногда имеет смысл это сделать повторно. Запустите следующие команды:

sudo update-initramfs -u

Убедитесь, что в /etc/initramfs-tools/modules перечислены необходимые модули для LVM и RAID. Обычно это dm-mod, dm-raid, raid0, raid1 и т. д. Добавьте их, если они отсутствуют.

3. Параметры модуля dm

Возможно, необходимо сообщить системе о том, что операция должна быть выполнена в виде специфичного для RAID. Проверьте файл /etc/lvm/lvm.conf и убедитесь, что опция filter правильно настроена. Пример:

filter = [ "a|^md.*|", "r|.*|" ]

4. Проверьте наличие ошибок

Исследуйте журналы загрузки для выявления возможных проблем. Это можно сделать с помощью команды:

journalctl -b

Ищите сообщения, связанные с LVM, RAID и устройствами, возможно, они дадут более четкое представление о происходящем.

5. Создание скрипта для автоматической активации VG

Вы можете попробовать создать скрипт, который будет автоматически активировать группу томов при загрузке. Попробуйте добавить следующий скрипт в директорию /etc/initramfs-tools/scripts/init-top/:

#!/bin/sh
PREREQ=""

prereqs() {
    echo "$PREREQ"
}

case $1 in
    prereqs)
        prereqs
        exit 0
        ;;
esac

# Активировать LVM
/sbin/lvm vgchange -ay

Не забудьте сделать скрипт исполняемым:

sudo chmod +x /etc/initramfs-tools/scripts/init-top/activate-lvm

После создания скрипта обновите initramfs:

sudo update-initramfs -u

6. Тестирование нового ядра

Если проблема остается с новым ядром, возможно, стоит временно установить более раннюю версию ядра (например, 5.15), которая работает, и проверить, нет ли проблем с совместимостью в новых версиях ядра. Это могут быть регрессии, о которых сообщают другие пользователи.

7. Последняя инстанция

Если ничего из вышеперечисленного не поможет, вы всегда можете рассмотреть возможность переустановки системы. Возможно, следует создать чистую установку Ubuntu 24.04 с последующей миграцией необходимых данных и настроек.

Надеюсь, эти рекомендации помогут вам решить проблему с запуском. Успехов!

Оцените материал
Добавить комментарий

Капча загружается...