Как вручную загрузиться из командной строки grub после do-release-upgrade?

13

Я прочитал пару других вопросов по этой теме, и они оба указали на документацию сообщества Grub2 и установку конфигураций grub с установочного диска. У меня были некоторые проблемы с документацией, так что вот где я. Это может быть полным PEBKAC.

У меня два гостя сидят на сервере Ubuntu 10.04, виртуализированном под KVM, оба изначально работали с 10.04. Я использовал «do-release-upgrade» для обновления до 10.10 без перебоев в обоих полях, перезагрузился, а затем запустил «do-release-upgrade» для обновления до 11.04 для обоих блоков. В спешке я игнорировал ошибки, связанные с отсутствующими конфигурациями grub. Когда я перезапустил гостей, естественно, мне предложили жуткую подсказку. Выдача «boot» приводит к «ошибке: нет загруженного ядра».

Вот вывод ls для корневого раздела:

grub prompt ls output

Следуя руководству по ручной загрузке, я не могу разобраться в настройках, используя «SS928-root» или «hda0,1» в качестве корневой файловой системы. Почти все выдает ошибку «файл не найден».

Выдача «ls» в обеих этих файловых системах показывает несколько опций для vmlinuz и initrd.img. Эти гости используют LVM, если это помогает.

РЕДАКТИРОВАТЬ

Я получил немного дальше. Следующая последовательность команд:

полууспешный ботинок

Выводит следующий экран (после прокрутки довольно большого количества текста):

BusyBox Shell

cmhobbs
источник
Ваш пост помог мне восстановить мой загрузчик после неприятного обновления Windows 10. Linux даже восстановился после гибернации с целой сессией нетронутой. Благодарность!
MariusM

Ответы:

9

Посмотрев на пост jdehaan, я проверил машину с похожей конфигурацией. Выйдя из grub.cfg другого ящика, я использовал следующие команды для загрузки этой вещи:

recordfail
insmod ext2
set root='(hd0,1)'
linux /vmlinuz-2.6.32-server root=/dev/mapper/SS928-root ro quiet
initrd /initrd.img-2.6.32.30-server
boot

Я полагаю, что следующий шаг - выяснить, как заменить grub.cfg на этом компьютере сейчас.

cmhobbs
источник
3

У меня была та же проблема, и я мог решить ее, указав

linux /boot/vmlinuz.... root=/dev/sda1

Поэтому / dev / sda1 (или что будет соответствовать в вашей системе) вместо SS ... Остальные ваши посты были одинаковыми во время моих попыток.

jdehaan
источник
1
Я полагаю, что в теории, потому что эта вещь работает LVM, который должен быть / dev / mapper / SS928-root. Это определенно не работает в этом случае.
cmhobbs
2

Если у вас где-то есть работающая конфигурация grub, lsна корневом уровне перечисляются разделы, и configfile (boot device)/path/to/grub.configвы можете загрузить свою конфигурацию grub.

g.rocket
источник