2 votos

UEFI iPXE de arranque en debian resultados en el shell de grub

Un poco de contexto, soy el administrador del estudiante, tratando de ampliar mi red de conocimiento, ya que no es mi punto fuerte.

Actualmente, estoy experimentando con PXE. Hace un par de días, he creado un par de ESXi Máquinas Virtuales, siendo uno de ellos un servidor DHCP y servidor TFTP, y los otros dos son la BIOS y UEFI clientes. Me las arreglé para arranque de debian a través de PXE, en tanto BIOS y UEFI máquinas.

He oído acerca de iPXE y las posibilidades que trae (como el arranque de HTTP, iSCSI, ...) y decidí darle una oportunidad. Por ahora, todavía estoy tratando de arrancar de mi debian netboot instalador, he pensado que me gustaría probar remota de archivos después de asegurarse de que la instalación fue correcta.


En este punto, esto es lo que mi DHCP conf parece (menos cualquier cosa que no sea realmente de interés) :

option arch code 93 = unsigned integer 16;
class "pxe-clients" {
    match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
    option tftp-server-name "192.168.0.5";
    next-server 192.168.0.5;
    if option arch = 00:00 {
        if exists user-class and option user-class = "iPXE" {
            filename = "pxelinux.0";
        } else {
            filename = "undionly.kpxe";
        }
    } elsif option arch = 00:02 or option arch = 00:06 or option arch = 00:07 or option arch = 00:08 or option arch = 00:09 {
        if exists user-class and option user-class = "iPXE" {
            filename = "bootnetx64.efi";
        } else {
            filename = "ipxe.efi";
        }
    } else {
        filename = "UNKNOWN_VCI";
    }
}

192.168.0.5 es la IP de la LAN del servidor DHCP/servidor TFTP.

Como para mi servidor TFTP del directorio root :

root@vmpxe:/srv/tftp# ls -l
total 968
lrwxrwxrwx 1 root root   37 Sep 22 14:01 bootnetx64.efi -> debian-installer/amd64/bootnetx64.efi
drwxrwxr-x 3 root root 4.0K Sep 22 00:21 debian-installer
-rw-r--r-- 1 root root 896K Sep 22 16:00 ipxe.efi
lrwxrwxrwx 1 root root   47 Sep 22 00:21 ldlinux.c32 -> debian-installer/amd64/boot-screens/ldlinux.c32
lrwxrwxrwx 1 root root   33 Sep 22 00:21 pxelinux.0 -> debian-installer/amd64/pxelinux.0
lrwxrwxrwx 1 root root   35 Sep 22 00:21 pxelinux.cfg -> debian-installer/amd64/pxelinux.cfg
-rw-r--r-- 1 root root  64K Sep 22 16:00 undionly.kpxe
-rw-rw-r-- 1 root root   64 Sep 22 00:21 version.info

De nuevo, insisto en el hecho de que antes de iPXE todo funcionaba bien en ambas arquitecturas. Los únicos cambios que hice fueron para descargar el undionly.kpxe y ipxe.efi archivos de iPXE del sitio web, y editar el DHCP conf para envolver el nombre de archivo de configuración en la if exists user-class and option user-class = "iPXE" {...} else {...} condiciones.

Ahora, la BIOS de la máquina hace PXE -> iPXE -> Debian netboot instalador. Todo funciona bien.

Sin embargo, la UEFI máquina hace PXE -> iPXE -> shell de grub.

Traté de tcpdump el proceso, pero que no dieron ningún resultado: todo el tráfico que parece normal y esperado. No difiere mucho de la que tenía antes de iPXE.

Alguna idea de qué puede estar pasando aquí ?


EDIT : Más de tcpdump mostrar pruebas de que sin iPXE, mi EFI máquina envía RRQ paquetes para el gestor de arranque y un montón de otros archivos que, supongo, a los que hace referencia el gestor de arranque. Sin embargo, con iPXE, sólo el bootloader solo puedo ver el gestor de arranque.

Así que supongo que la pregunta correcta es: ¿qué sucede con iPXE para no recuperar todos aquellos archivos que están correctamente descargado por un estándar de PXE ?

1voto

Pat Puntos 1087

no se relaciona con su problema, pero

para arrancar EFI64

} elsif option arch = 00:02 or option arch = 00:06 or option arch = 00:07 or option arch = 00:08 or option arch = 00:09 {

debe cambiarse a

} elsif option arch = 00:07 or option arch = 00:09 {

Respecto a tu pregunta si arranca bootnetx64.efi que es lo que se obtiene; una pantalla de Grub.

ver aquí: http://lists.ipxe.org/pipermail/ipxe-devel/2015-December/004532.html

EDITAR: Cuando se carga pxelinux.0 dependiendo de su versión de la que va a recuperar la dinámica de los componentes más pxelinux.0 definición del menú. cuando se carga iPXE usted no tiene los archivos cargados.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: