Grub rescue на Linux что делать не загружается ОС

Grub rescue на Linux что делать

Не загружается Linux? Grub rescue — это режим, когда GRUB 2 не может найти папку GRUB или ее содержимое отсутствует/повреждено. Папка GRUB 2 содержит меню, модули и сохраненные данные об окружающей среде.

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

Grub rescue на Linux что делать

Посмотрим какие диски и разделы у нас есть.

grub rescue> ls
(hd0) (hd0,msdos2) (hd0,msdos1)

Видим, что есть диск (hd0) и разделы msdos2 и msdos1. Посмотрим что на разделах.

grub rescue> ls (hd0,msdos2)/
boot etc initrd.img lib32 libx32 media opt root sbin srv tmp var vmlinuz.old
bin dev home initrd.img.old lib lib64 lost+found mnt proc run snap sys usr vmlinuz

grub rescue> ls (hd0,msdos1)/
config-4.19.0-11-amd64 config-4.19.0-14-amd64 initrd.img-4.19.0-11-amd64 initrd.img-4.19.0-14-amd64 System.map-4.19.0-11-amd64 System.map-4.19.0-14-amd64 vmlinuz-4.19.0-12-amd64
config-4.19.0-12-amd64 grub initrd.img-4.19.0-12-amd64 lost+found System.map-4.19.0-12-amd64 vmlinuz-4.19.0-11-amd64 vmlinuz-4.19.0-14-amd64

Мы видим, что msdos2 — это корневой раздел / где хранятся все файлы системы, а msdos1 — это раздел boot (потому что там нужная нам директория grub и ядро) который монтируется к /boot. Возможен другой вариант, когда раздел один и директория boot не монтируется отдельным разделом,тогда ее найти можно так:

grub rescue> ls (hd0,msdos1)/boot/
config-4.19.0-11-amd64 config-4.19.0-14-amd64 initrd.img-4.19.0-11-amd64 initrd.img-4.19.0-14-amd64 System.map-4.19.0-11-amd64 System.map-4.19.0-14-amd64 vmlinuz-4.19.0-12-amd64
config-4.19.0-12-amd64 grub initrd.img-4.19.0-12-amd64 lost+found System.map-4.19.0-12-amd64 vmlinuz-4.19.0-11-amd64 vmlinuz-4.19.0-14-amd64

Сейчас загрузим нашу ОС

grub rescue> set prefix=(hd0,msdos1)/grub
grub rescue> set root=(hd0,msdos2)
grub rescue> insmod normal
grub rescue> normal

А для второго варианта с одним разделом

grub rescue> set prefix=(hd0,msdos1)/boot/grub
grub rescue> set root=(hd0,msdos1)
grub rescue> insmod normal
grub rescue> normal

После того, как ОС загрузится, откройте терминал под суперпользователем и установите GRUB на свой диск заново.

# update-grub
# grub-install /dev/sda

Где /dev/sda — это Ваш системный диск.

Конечно, grub rescue не всегда так просто можно исправить. Например, если у Вас система LVM или GPT разметка, то потребуется чуть больше команд… Можете задавать вопросы в комментариях и делиться своим опытом исправления проблемы загрузки Linux.


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

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.


Unlix © Все права защищены 2021

Копирование материалов с сайта Unlix.ru без указания полной ссылки на источник ЗАПРЕЩЕНО!