LINUX.ORG.RU

переключение между grub4dos и grub2 при загрузке по сети

 , ,


0

2

Пытаюсь настроить загрузку по сети по этой статье: http://habrahabr.ru/post/253256/. На виртуалке все получается нормально. Но в реальной сети уже есть dhcp и tftp серверы (tftpd32), которые ссылаются на файл grldr (grub4dos). Если скопировать содержимое папки /boot с nfs сервера в корень сервера tftp, подправить grub.cfg (указать адрес nfs сервера), и указать загрузочным файл /grub/i386-pc/core.0 - загрузка через grub2 работает, arch загружается по сети. Но я не могу найти способа загрузить grub2 из под grub4dos, или наоборот - grub4dos из под grub2, чтобы получить и то, что указано в menu.lst, и то, что описывается в статье. Находил инструкции, где предлагалось указать в menu.lst:

kernel /grub/core.img
но у меня нет такого файла ни в папке /grub, ни в папке /grub/i386-pc/. Такой файл есть в папке /boot/grub/i386-pc/ загрузочного сервера (того, на котором установлен arch-linux и запущен сервер nfs), но с ним загрузка через pxe не работает. Еще пробовал указать в grub.cfg:
menuentry "Меню Grub4Dos" {
linux /grub.exe --config-file=/menu.lst
}
но так тоже не работает - загружает grub4dos, но не видит menu.lst - вываливается в командную строку grub4dos. Куда можно покопать?


Ответ на: комментарий от vel

Читал вчера уже. И полдня экспериментировал. Все не запомнил, но сейчас повторил 2 простейших эксперимента: 1. Загружаюсь в grub2. Нажимаю c, чтобы выйти в командную строку. Набираю:

grub> chainloader /grldr
получаю:
error: invalid signature.
2. Загружаюсь в grldr. Нажимаю c. Набираю:
grub> chainloader /grldr
получаю:
Error 13: Invalid or unsupported executable format

sherv
() автор топика
Ответ на: комментарий от sherv
menuentry 'GRUB4DOS' {
  set root='hd1,msdos5'
  linux16 /grub4dos/grub.exe
}

Указания конфига с помощью --config-file= почему то не работает, можно положить menu.lst просто в корень.

i7
()
Ответ на: комментарий от i7

загрузка по pxe - откуда бы там взяться hd1? menu.lst и так лежит в корне сервера tftp. если сделать

menuentry 'GRUB4DOS' {
  set root='hd1,msdos5'
  linux16 (tftp,192.168.0.1)/grub.exe
}
то grub4dos загружается, но не видит menu.lst.

sherv
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.