Не может загрузить grub4dos через kexec

Я выполняюсь

sudo kexec -l /sbin/grub.exe
sudo kexec -e

и получите черный экран с некоторыми фразами. Шрифт сжат вертикально, и я вижу также одну копию тех же фраз справа. Существуют фразы (я мог перепутать числа),

"... root is (0x80.0)
"Processing the preset menu ...
Launching GRUB ..."

Это не зависает, потому что, если я ожидаю в течение 10-20 секунд, еще одна фраза появляется, "Если зависание, используйте 'геометрию - lba1sector (120)' в начале предварительно установленного меню".

Я пытался вставить ту строку в menu.lst. Никакой эффект. Также я попробовал --reset-vga опция kexec и попробованный --append='...' опция передать то же содержание menu.lst к grun4dos как его параметр. Тот же результат.

Я не вносил изменения в MBR или загрузочном секторе раздела специально для grub4dos. У меня есть menu.lst и grldr на C: диск и одна строка в boot.ini там. Таким образом я могу загрузить Ubuntu через grub4dos.

Это было для grub4dos 0.4.5. С grub4dos 0.4.4 я могу достигнуть некоторого меню, шрифт сжат и введен, отключен.

kexec настроен в способе сделать быстрый перезапуск посредством него, когда я нажимаю Shut Down-> Restart. Таким образом, это хорошо работает.

Какие-либо предложения, как решить эту проблему? Возможно, Ubuntu должна сделать сначала некоторые задачи, которые она делает обычно перед нормальным перезапуском и затем запускает kexec. Но как проверить это? Я плохо знаком с Linux.

Здесь они говорят, что 32-разрядный сегмент загрузки должен быть добавлен к boot/i386/pc/lnxboot.S, который отсутствует в Ubuntu.

Обновление: следующие команды могли перезапустить Ubuntu

sudo kexec -l /boot/vmlinuz-3.13.0-39-generic --initrd=/boot/initrd.img-3.13.0-39-generic --command-line="$( cat /proc/cmdline )"
sudo kexec -e

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

Update2: Аналогичный результат, загружающийся freedos изображение

kexec -l grub.exe --initrd=DOS.IMG --command-line="--config-file=map (rd) (fd0); map --hook; chainloader (fd0)+1; rootnoverify (fd0)"

Update3: Аналогичные результаты с grub4dos версиями 0.4.3, 0.4.2, 0.4.1

Update4: Моя kexec версия 2.0.6. Ubuntu 14.04. В начальной загрузке / я нахожу 3.13.0-39 в некотором имени файла (версия ядра?).

Update5: В Knoppix 5.1.1 LiveCD grub4dos, загруженном обычно и загруженная Ubuntu затем, хотя это было заморожено затем. И Knoppix 5.1.1 (LiveCD или нормальный) не имеет приостановки. Так или иначе это - некоторый прогресс.

1
задан 24 November 2014 в 01:48

1 ответ

Почему Вам нужен grub4dos для начальной загрузки машины?

я использовал бы Супер Диск Grub2, который может сделать намного легче то же самое.

-1
ответ дан 4 August 2019 в 08:59

Другие вопросы по тегам:

Похожие вопросы: