Как я могу загрузить Ubuntu, когда у меня есть только Grub?

11

Поэтому я обновил Ubuntu до последнего ядра. Но после обновления и после перезагрузки Ubuntu все, что я получаю, это GRUB. Как мне снова загрузить Ubuntu, когда у меня есть только GRUB?

Я установил Ubuntu с помощью wubi.

Спасибо куча за помощь

Джошуа Партоги
источник
Это установка wubi или нормальная установка?
karthick87
Я считаю, что это устарело. Может кто-нибудь сказать мне, как это сделать на grub2?

Ответы:

16

Используя Grub

Если вы получили grubприглашение, а система и ядро ​​все еще установлены в разделе, вы можете «вручную» загрузить систему - т.е. без помощи рабочего grub.cfg. Это также работает с grub run из live media. Для этого grub включает в себя элементарную команду ine, которую вы можете использовать для поиска раздела и загрузки системы.

find /vmlinuz

Это должно дать вам раздел вроде (hd0,0). Вы также можете использовать lsкоманду, чтобы просмотреть раздел и посмотреть, какие ядра доступны. Команда searchработает аналогично. Вы также можете использовать вкладку завершения .

set root=(hd0,1)

Конечно, замените идентификатор раздела тем, что findвам показали.

linux /vmlinuz root=/dev/sda1
initrd /initrd.img

Выберите образ ядра и образ initrd, пару, которую всегда нужно использовать вместе. К счастью, Ubuntu создает пару символических ссылок в корневом каталоге, которые указывают на рабочий образ и initrd. Обратите внимание, что вам нужно заменить /dev/sda1представление раздела в схеме, используемой ядром Linux. Примерно, (hd0,1)соответствует /dev/sda1; (hd0,2) corresponds to/ dev / sda2 ;(hd1,1) соответствует /dev/sdb1.

boot

Это загрузит выбранное ядро ​​с выбранного раздела. После того, как вам удалось загрузить систему, вы можете использовать ее для восстановления grub, как подробно описано, например, здесь .

Граб с Вуби

Выше было сделано предположение, что Ubuntu устанавливается регулярно, то есть в отдельном разделе. При написании вы использовали Wubi, что означает, что вы установили его в большой файл в разделе Windows (NTFS), используя технику, называемую «Lupine». Я не вижу причин, почему это не могло работать в принципе, хотя процесс более сложный. Вот содержимое на grub.cfgоснове установки Wubi:

insmod part_msdos
insmod ntfs
set root='(hd0,msdos5)'
search --no-floppy --fs-uuid --set be300f9c300f5ab3
loopback loop0 /ubuntu/disks/root.disk
set root=(loop0)
linux /boot/vmlinuz root=/dev/sda1 loop=/ubuntu/disks/root.disk
initrd /boot/initrd.img

Вам нужно будет адаптировать это к вашему конкретному случаю. В этом фрагменте, взятом из установки 10.10, searchкоманда находит корневой раздел, используя UUID или идентификатор файловой системы, которые вы, вероятно, не знаете; Вы можете использовать --file --set /ubuntu/disks/root.diskвместо этого ( вот официальная документация). Эта конфигурация grub создает виртуальный диск - «устройство обратной связи», loop0которое называется содержимым «файла раздела» /ubuntu/disks/root.diskв вашем разделе NTFS. Немного проб и ошибок, вы сможете сделать эту работу.

loevborg
источник
4
Я получаюerror: unknown command find'.
Абдулл
@Abdull - это потому, что вы используете grub2 вместо устаревшего grub. Дважды нажмите клавишу Tab и увидите доступные команды, или pager = 1 \\ help
Ярослав Никитенко
Если вы используете EFI, замените linuxи initrdна соотв. linuxefiи initrdefi.
Ярослав Никитенко