Восстановление настроек загрузки Grub/UEFI с корневой файловой системой на логическом томе

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

Недавно я настроил новый виртуальный частный сервер для хостинга нескольких вещей с использованием YunoHost. Он работает на Debian 12. Во время первоначальной настройки я объявил как основной диск, так и второй диск (Локальное блочное хранилище) логическими томами в одной группе, так что вместо двух дисков по 500 ГБ у меня теперь один на 1 ТБ.

Первоначальная загрузка не вызвала проблем, но с тех пор сервер постоянно не загружается. Он просто не загружается в Debian, а вместо этого загружается в Grub2, который бесполезно находит раздел efi, объявляет все реальные физические тома нечитаемыми и просто не хочет

ls (lvm/LogVol)

по какой-то причине.

Однако, когда я виртуально вставляю live usb с GParted, у меня есть опция не загружаться в образ live usb, а выбрать опцию под названием “Настройки прошивки UEFI”. Когда я выбираю это и затем “Debian” из списка опций, я нормально загружаюсь в свою систему.

В чем дело?

Вывод grub-install, grub-update и efibootmgr:

me@killefitt:~$ sudo grub-install
[sudo] пароль для me:
Установка для платформы x86_64-efi.
Установка завершена. Ошибок не обнаружено.

me@killefitt:~$ sudo update-grub

Генерация конфигурационного файла grub ...
Найдены изображения linux: /boot/vmlinuz-6.1.0-28-amd64
Найдено изображение initrd: /boot/initrd.img-6.1.0-28-amd64
Найдены изображения linux: /boot/vmlinuz-6.1.0-18-amd64
Найдено изображение initrd: /boot/initrd.img-6.1.0-18-amd64
Предупреждение: os-prober не будет выполнен для обнаружения других загрузочных разделов.
Системы на них не будут добавлены в конфигурацию загрузки GRUB.
Проверьте запись документации GRUB_DISABLE_OS_PROBER.
Добавление записи в меню загрузки для настроек прошивки UEFI ...
готово

me@killefitt:~$ sudo efibootmgr

BootCurrent: 0009
Timeout: 3 секунды
BootOrder: 0009,0001,0002,0003,0004,0005,0006,0007,0000,0008,000A
Boot0000* UiApp
Boot0001* UEFI QEMU DVD-ROM QM00001
Boot0002* UEFI Разное устройство
Boot0003* UEFI PXEv4 (MAC:4A5A629B3980)
Boot0004* UEFI PXEv4 (MAC:4A5A629B3980) 2
Boot0005* UEFI PXEv6 (MAC:4A5A629B3980)
Boot0006* UEFI HTTPv4 (MAC:4A5A629B3980)
Boot0007* UEFI HTTPv6 (MAC:4A5A629B3980)
Boot0008* EFI Внутренний оболочка
Boot0009* debian
Boot000A* UEFI Разное устройство 2

me@killefitt:~$ sudo efibootmgr -o 0009,0001

BootCurrent: 0009
Timeout: 3 секунды
BootOrder: 0009,0001
Boot0000* UiApp
Boot0001* UEFI QEMU DVD-ROM QM00001
Boot0002* UEFI Разное устройство
Boot0003* UEFI PXEv4 (MAC:4A5A629B3980)
Boot0004* UEFI PXEv4 (MAC:4A5A629B3980) 2
Boot0005* UEFI PXEv6 (MAC:4A5A629B3980)
Boot0006* UEFI HTTPv4 (MAC:4A5A629B3980)
Boot0007* UEFI HTTPv6 (MAC:4A5A629B3980)
Boot0008* EFI Внутренний оболочка
Boot0009* debian
Boot000A* UEFI Разное устройство 2


me@killefitt:~$ sudo journalctl -b | grep EFI

Dec 12 21:44:04 killefitt.eu kernel: efi: EFI v2.70 от EDK II
Dec 12 21:44:04 killefitt.eu kernel: fb0: EFI VGA framebuffer устройство

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

Восстановление настроек загрузки Grub/UEFI для логических томов в Debian 12

Если ваша система на основе Debian 12 не загружается должным образом, и вы сталкиваетесь с проблемами загрузки через Grub2, это может быть связано с неправильной конфигурацией UEFI или загрузочного процесса для логических томов. Рассмотрим пошаговый процесс для исправления ситуации и восстановления нормального загрузочного процесса.

1. Понимание проблемы

Из вашего описания видно, что система может загружаться с помощью UEFI, когда выбран соответствующий пункт, однако при прямой попытке загрузки через Grub система не может найти логические тома (LVM). Существует вероятность, что Grub не настроен должным образом для работы с логическими томами, что также подтверждается предупреждениями из update-grub о резервной системе, не обнаруженной на томах.

2. Настройка Grub для логических томов

Для настройки Grub для работы с LVM выполните следующие шаги:

Шаг 1: Загрузитесь в систему

Запустите вашу систему через настройку UEFI, как вы делали ранее, чтобы получить доступ к системе Debian.

Шаг 2: Обновление Grub
  1. Убедитесь, что LVM установлен:

    sudo apt install lvm2
  2. Соберите информацию о ваших логических томах:

    sudo lvscan

    Убедитесь, что ваши логическиеVolume находятся в состоянии "active".

  3. Перегенерируйте конфигурацию Grub:

    sudo update-grub

    После выполнения этой команды ваше внимание должно привлечь, если система обнаружила все необходимые модули. Убедитесь, что сообщение об обнаружении вашей операционной системы отображается.

Шаг 3: Переустановите Grub
  1. Переустановите Grub на UEFI:

    sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=debian

    Убедитесь, что вы указали правильный путь к вашей EFI директории.

  2. Проверьте результаты:
    Если команда прошла успешно, вы не должны увидеть никаких ошибок.

Шаг 4: Проверьте настройки efibootmgr
  1. Проверьте текущие настройки загрузки:

    sudo efibootmgr

    Убедитесь, что BootOrder установлен так, чтобы сначала загружался debian. В противном случае измените порядок, используя команду:

    sudo efibootmgr -o 0009,0001
  2. Проверьте и обновите UEFI настройки:
    Теперь снова выполните sudo efibootmgr, чтобы убедиться, что ваши изменения сохранены.

Шаг 5: Завершение процесса
  1. Перезагрузите систему:

    sudo reboot
  2. Проверьте, будет ли система загружаться непосредственно через Grub.

Заключение

Эти шаги помогут вам восстановить настройки загрузки Grub и UEFI для ваших логических томов на Debian 12. Важно, чтобы все команды выполнялись с корректными правами доступа и с осознанием их последствий. Если проблема не решается, возможно, вам потребуется обратиться к документации вашего виртуального сервера или консультироваться с сообществом Debian для более специализированной помощи.

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

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