LINUX.ORG.RU

Fedora 36. Удалил grub.cfg, теперь не могу запустить систему.

 ,


1

1

По своей глупости удалил grub.cfg, теперь при попытке запустить Fedora выходит grub minimal bash-like editing is supported. Пробовал прописать там эти команды:

set prefix=(hd0,1)/boot/grub 
set root=(hd0,1)

Дальше проверяю ls /boot/grub. Выходит ошибка о том, что такого раздела не обнаружено. Так же пробовал через boot repair, но данная утилита ошибок не находит. Линуксом пользуюсь недавно, поэтому прошу помощи.

буквально вчера так загрузился через minimal
ls покажет разделы дисков
ls (hd0,1)/ покажет файлы
linux (hd0,1)/vmlinuz-5.10.154
initrd (hd0,1)/initramfs-5.10.154.img
boot

далее загрузится в systemd rescue mode, там уже попроще…

anonymous2 ★★★★★
()
Последнее исправление: anonymous2 (всего исправлений: 1)

Ох… как же это надоело. Как будто смотришь на человека, что с разгону таранит стену прямо рядом с открытой дверью…

Ситуация же проще пареной репы, если понимать, как это работает:

  • 1a. Если это UEFI (что скорее всего так), то сперва UEFI составляет список возможных вариантов для загрузки. Он берет их из:
    • Записей, что в него добавила автоматика или человек руками.
    • Путем поиска по стандартным путям подходящих для загрузки файлов на EFI разделе, что отфоматирован в FAT32.
  • 2a. Потом UEFI грузит исполняемый файл с EFI раздела из той записи, что была выбрана руками или что шла по умолчанию, в твоем случае это загрузчик GRUB2-EFI.
  • 1b. Если это BIOS, что реже, то из MBR (область в первых 512 байт на диске) он грузит с выбранного загрузочным диска в оперативную память загрузчик, в твоем случае это первая часть GRUB2.
  • 2b. Потом эта первая часть грузит в оперативную память вторую часть GRUB2, что находится в пустом месте на диске перед первым разделом, который именно поэтому начинается с 1 мебибайта.
    1. Этот этап уже един как для UEFI, так и для BIOS. Загруженный в оперативную память GRUB2 берет на себя управление, и первым делом он с указанного раздела диска загружает файл конфигурации.
    1. После загрузки файла конфигурации GRUB2 или грузит сразу обозначенные по умолчанию файлы ядра Linux и initramfs в оперативную память, или предлагает варианты.
    1. После загрузки в оперативную память ядро Linux и initramfs берут управление на себя, после чего стартует /sbin/init , обычно systemd.

Теперь понял, что тебе делать? Тебе нужно загрузиться с LiveFlash, войти в chroot и сгенерировать конфиг заново, или руками указать какие именно файлы ядра Linux и initramfs нужно загрузить, как выше предложили, после чего регенерировать конфиг. А что ты пробуешь не работает потому, что ты указываешь GRUB2 с какого раздела грузить несуществующий файл конфигурации.

Vsevolod-linuxoid ★★★★★
()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 2)