Нам нужно настроить сервер EFI PXE. Я успешно смог заставить тестовую машину загружаться до тех пор, пока мы не доберемся до части pivot_root процесса загрузки. Тогда я получаю страшные
VFS: Cannot open root device "nvram" or unknown-block(0,0)
Please append a correct "root=" boot option; here are the available partitions:
И да, список разделов равен nil
.
Может кто-нибудь сказать мне, как можно получить устройство root = для моего старого Grub Conf для бездисковых компьютеров Centos? Очевидно, я уже пробовал /dev/nvram
и /dev/ram
.
Когда мы загружаем PXE (устаревший режим), нет проблем или специальных настроек, запрашивающих корневое устройство. Это просто работает. Это первый раз, когда я работал с загрузкой EFI, поэтому я уверен, что мне просто не хватает некоторых параметров.
Текущая настройка: CentOS 6.8, Legacy Grub (bootx64), ISC DHCP, TFTP
Текущая конфигурация EFI (/EFI/efidefault):
default=0
timeout=3
splashimage=(nd)/splash.xpm.gz
#prompt 0
#ONTIMEOUT default
title Linux
menu label UEFI Image
menu default
root (nd)
kernel /discovery_images/2.6.32-642.el6.x86_64/vmlinuz-2.6.32-642.el6.x86_64 root=/dev/nvram
append initrd=/discovery_images/2.6.32-642.el6.x86_64/centos-initramfs-2.6.32-642.el6.x86_64.img.gz rw shell init=/init biosdevname=0 consoleblank=0 vga=773 ramdisk_size=9216
FINAL FIX
Поэтому проблема заключалась в том, что я использовал неправильный синтаксис для устаревшей конфигурации GRUB. Благодаря #CENTOS в Freenode (IRC) один из участников (извините, я не помню его ник) указал, что Legacy GRUB не понимает директиву append
. Итак, перемещение аргументов в строке append
моей конфигурации (см. Выше) в директиву kernel
и потеря строки append
строке initrd
, а затем, наконец, удаление =
между initrd
и /discover...
, исправило проблему:
default=0
timeout=3
splashimage=(nd)/splash.xpm.gz
title Linux
menu label UEFI Image
menu default
root (nd)
kernel /discovery_images/2.6.32-642.el6.x86_64/vmlinuz-2.6.32-642.el6.x86_64 rw shell init=/init biosdevname=0 consoleblank=0 vga=773 ramdisk_size=9216
initrd /discovery_images/2.6.32-642.el6.x86_64/centos-initramfs-2.6.32-642.el6.x86_64.img.gz