Tengo un servidor TFTP / DHCP / NFS / SMB (servidor Ubuntu 12.04 LTS) en 192.168.26.1. Utilizo pxelinux para mostrar un menú que contiene las opciones de inicio e instalación para Windows, un instalador de red Ubuntu y el CD en vivo Linux Mint 17 MATE. Hacer que funcionara así ya era desagradable y me estoy quedando sin vapor ...
Para Linux Mint, proporcioné 2 opciones de arranque de red: NFS y CIFS. Lo conseguí trabajando completamente con NFS: el usuario puede seleccionarlo en el menú de arranque y, poco después, aterriza en el escritorio del CD de Linux Mint live. Pero con CIFS, las redes no se inicializan correctamente. Cuando se inicia Linux Mint, la red se bloquea durante 120 segundos. Luego, continúa iniciando en el Escritorio, pero net network-manager
no se inicia (y no se inicia). Sospeché que podría ser un problema con el servidor DHCP que no responde, sin embargo, en el registro del servidor DHCP puedo ver la solicitud DHCP y la respuesta exitosa.
Una vez en el escritorio de Linux Mint, ifconfig
informa una dirección IP asignada por el DHCP y funciona el ping del servidor.
Mi configuración de pxelinux es (todo después APPEND
está en una línea, simplemente la dividí para facilitar la lectura en este sitio):
NFS:
LABEL linuxmint17
MENU LABEL Linux Mint 17
KERNEL linux-mint-17/image/casper/vmlinuz
APPEND
root=/dev/nfs boot=casper netboot=nfs
nfsroot=192.168.26.1:/var/lib/tftpboot/linux-mint-17/image
initrd=/linux-mint-17/image/casper/initrd.lz
CIFS:
LABEL linuxmint17smb
MENU LABEL Linux Mint 17 (SMB)
KERNEL linux-mint-17/image/casper/vmlinuz
APPEND
root=/dev/cifs boot=casper netboot=cifs
nfsroot=//192.168.26.1/tftpshare/linux-mint-17/image
ip=dhcp
initrd=/linux-mint-17/image/casper/initrd.lz
Tenga en cuenta que tuve que insertar la ip=dhcp
opción en el menú CIFS. Si no hago eso, el proceso de arranque se bloquea durante 120 segundos cuando se inicializa la red, pero luego no continúa. Si agrego esa línea, todavía se cuelga, pero después de 120 segundos continúa arrancando.
La puesta en marcha:
Las máquinas virtuales cliente y servidor solo están conectadas entre sí (red interna). No hay otras máquinas en la red en absoluto.
El servidor tiene todos los archivos de arranque pxe debajo /var/lib/tftpboot/
. El Linux Mint ISO (sin modificar) está montado debajo /var/lib/tftpboot/linux-mint-17/image
. vmlinuz
y initrd
están adentro /var/lib/tftpboot/linux-mint-17/image/casper
. /var/lib/tftpboot/
es una exportación NFS. Hay un recurso compartido de samba llamado tftpshare
que se asigna a /var/lib/tftpboot/
(solo lectura, permite el acceso a todos).
smb.conf
[tftpshare]
comment = TFTP Root
path = /var/lib/tftpboot
browsable = yes
guest ok = yes
read only = no
create mask = 0644
dhcpd.conf
authoritative;
subnet 192.168.26.0 netmask 255.255.255.0 {
range 192.168.26.10 192.168.26.40;
next-server 192.168.26.1;
filename "pxelinux.0";
}
Esta es una extraña brecha de 2 minutos en la syslog
máquina del cliente después de un inicio exitoso en el entorno de escritorio en vivo:
Jun 14 13:13:18 mint kernel: [ 23.388873] intel_rapl: domain core energy ctr 0:0 not working, skip
Jun 14 13:13:18 mint kernel: [ 23.528409] intel_rapl: domain uncore energy ctr 0:0 not working, skip
Jun 14 13:13:18 mint kernel: [ 23.528453] intel_rapl: no valid rapl domains found in package 0
Jun 14 13:13:20 mint ntpdate[1198]: Can't find host ntp.ubuntu.com: Name or service not known (-2)
Jun 14 13:13:20 mint ntpdate[1198]: no servers can be used, exiting
(Brecha de 2 minutos sin ninguna entrada, aproximadamente en el momento en que se produce el retraso de arranque de 120 segundos)
Jun 14 13:15:19 mint dbus[864]: [system] Activating service name='org.freedesktop.ConsoleKit' (using servicehelper)
Jun 14 13:15:19 mint dbus[864]: [system] Activating service name='org.freedesktop.PolicyKit1' (using servicehelper)
Jun 14 13:15:19 mint acpid: starting up with netlink and the input layer
Jun 14 13:15:19 mint acpid: 9 rules loaded
Jun 14 13:15:19 mint acpid: waiting for events: event logging is off
Esto es lo que sucede en ambos casos cuando se usa CIFS:
En el servidor:
...
Jun 14 13:12:52 ubuntu-netboot in.tftpd[2722]: RRQ from 192.168.26.13 filename /linux-mint-17/image/casper/initrd.lz
Jun 14 13:13:14 ubuntu-netboot dhcpd: DHCPDISCOVER from 08:00:27:1c:c5:43 via eth1
Jun 14 13:13:14 ubuntu-netboot dhcpd: DHCPOFFER on 192.168.26.14 to 08:00:27:1c:c5:43 via eth1
Jun 14 13:13:14 ubuntu-netboot dhcpd: DHCPREQUEST for 192.168.26.14 (192.168.26.1) from 08:00:27:1c:c5:43 via eth1
Jun 14 13:13:14 ubuntu-netboot dhcpd: DHCPACK on 192.168.26.14 to 08:00:27:1c:c5:43 via eth1
La IP que se asigna al cliente en caso de un inicio exitoso en el escritorio, de acuerdo con ifconfig
, es de hecho ...14
.
Esto es lo que sucede sin el ip=dhcp
:
Esto es lo que sucede con el ip=dhcp
, inmediatamente antes de que el escritorio muestre:
Estoy agradecido por cualquier idea. Si algún otro registro (¿cuál?) Ayudaría, puedo proporcionarlo.
eth0
a mi puerta de enlace si necesito acceso a Internet.Respuestas:
Este problema ha sido resuelto por Serva (estoy relacionado con el desarrollo de Serva)
Aquí puede encontrar el núcleo completo y las líneas anexas más el initrd.gz adicional requerido para el arranque PXE de las versiones actuales de Ubuntu / Mint live con CIFS
Básicamente, el problema es un error de Casper (AFAIK nunca se informó / solucionó antes) que en el caso de un CIFS netmount olvida exportar un parámetro del kernel que luego afecta los scripts de configuración de red que terminan recreando con retrasos y errores el archivo / etc / network / interfaces.
Si vemos la línea de "agregar" Ubuntu / Mint de Serva
encontramos que la variable incrustada "initrd" está hecha de 2 archivos initrd "cargados consecutivamente" (initrd.lz e INITRD_N11.GZ)
El primero (initrd.lz) es el que viene con Ubuntu / Mint, mientras que el segundo (INITRD_N11.GZ) es un pequeño initrd personalizado de 8K (desarrollado originalmente por Serva) que incluye los componentes parcheados. Este enfoque evita la necesidad de recrear el gran initrd.lz original (20 MB). INITRD_N11.GZ se puede descargar libremente desde el sitio de Serva (no publique enlaces directos aquí)
Si continuamos analizando la línea "agregar", vemos la necesidad de agregar las opciones de montaje CIFS (el OP olvida este paso) que se llevan en este caso por la variable de alguna manera engañosa "NFSOPTS"
En este ejemplo, el recurso compartido SMB tiene un usuario = serva con contraseña = avres y se montará como "Solo lectura", los parámetros de usuario / pase fuera de curso deben editarse en consecuencia.
Las rutas TFTP y el localizador CIFS son los requeridos por la estructura del repositorio Serva; cuando el servidor PXE no es Serva, esos parámetros deben editarse en consecuencia.
Si inician PXE de esta manera, las versiones de Ubuntu / Mint Live desde un recurso compartido CIFS no habrá demoras relacionadas con la red e Internet / Networking funcionará inmediatamente después del inicio
Editar:
Error ya informado a Ubuntu Launchpad y confirmado
fuente
INITRD_N11.GZ
sitio de Serva como lo mencionaste lo hizo. No he incluido ningunoNFSOPTS
porque mi servidor samba no usa autenticación.