Las estaciones de trabajo sin disco (o las computadoras que actúan como tales) son a veces conocidas como las computadoras de red o clientes híbridos. El cliente híbrido puede simplemente significar una estación de trabajo sin disco, o puede ser usado en un sentido más particular para indicar a una estación de trabajo sin disco que corra remotamente algunas, pero no todas, las aplicaciones, como en la arquitectura computacional de cliente ligero.
Las ventajas de los nodos sin disco pueden incluir un costo de producción más bajo, costos de funcionamiento más bajos, una operación más silenciosa, y ventajas de manejabilidad (por ejemplo, una instalación de software manejada centralmente).
Una vez más, por razones de la manejabilidad, en muchas universidades y en algunas organizaciones grandes, las PC son usadas en una configuración similar, con algunas o todas las aplicaciones almacenados remotamente pero ejecutadas localmente. Sin embargo, éstos no son estaciones sin disco si todavía se cargan (boot) desde un disco duro local.
(Fuente wikipedia)
Los conceptos que deberíamos tener claros son:
- Instalar un servidor NFS (Publicado el 2 de Noviembre de 2009)
- Crear un servidor PXE (Publicado el 18 de Enero de 2010)
Crear un sistema diskless
Lo primero que vamos ha hacer es que los nodos puedan arrancar sin disco duro local. El sistema de archivos lo montaran en el arranque por NFS y se encontrará en el servidor maestro (HPCMaster). Así pues, lo que vamos ha hacer es instalar en una máquina el sistema operativo para la máquina que llamaremos HPCMaster y en otra máquina instalaremos (en local también, ya le sacaremos el disco duro local luego) otro sistema operativo. Antes de empezar la instalación tomaremos las decisiones necesarias sobre que IPs tendrá el servidor (y si hiciera falta en que VLANs estaría) y que rangos de IPs usaremos para los nodos. Para nuestra instalación y el ejemplo siguiente usaremos estos datos:
- HPCMaster
- IP HPC = 192.168.0.100
- IP del Centro = DHCP del Centro (Así pues estará conectado a la VLAN DHCP)
- HPC Nodos
- Rango de IPs = 192.168.0.1 al 192.168.0.49
/HPC/nfsroot_nodeX
en donde la X será el número del nodo.
Instalación del sistema operativo HPCMaster
Para instalar el servidor de nuestro sistema HPC usaremos una distribución XUbuntu 9.10 ya que nos ofrece las ventajas de una distribución basada en Debian/Ubuntu, pero con un entorno de escritorio Xfce, caracterizado por ser muy eficiente ya que es más ligero y rápido que otros entornos como GNOME o Plasma (KDE).
Nos ha interesado instalar un entorno gráfico para una administración más cómoda de nuestro sistema HPC.
Instalaremos XUbuntu por defecto, si bien le diremos que será un servidor SSH. (Esto no es necesario ahora, pero de no hacerlo ahora lo deberemos hacer más tarde).
Al finalizar la instalación, desinstalaremos todo aquello que no nos interese tener, como el NetworkManager (nos daba problemos con el autorranque del servicio DHCP), el AppArmor o los juegos. Después actualizaremos el servidor. Deberemos comprobar también que tenemos instalados los paquetes syslinux (que usaremos como bootloader para el PXE) y initramfs-tools ( herramientas para crear y arrancar un sistema de inicio initramfs empaquetado para un kernel), ya que los necesitaremos más adelante para el arranque de los nodos en PXE. Desisntalaremos el network-manager para tener más control de la gestión de la red.
Instalación del sistema operativo en HPCNodo
Hay diferentes maneras de crear un nodo para que arranque con PXE y use el disco duro via NFS. La manera que se ha escogido para nuestro sistema es hacer una instalación de Ubuntu 9.10 Server 32bits en el nodo, usando temporalmente un disco duro local. Una vez instalado el sistema como habitualmente se haría en un PC, haremos la transferencia el sistema de archivos al servidor maestro (que hace de servidor NFS en nuestro caso, podría ser otro servidor diferente si así lo necesitáramos), que es el que contendrá es sistema de archivos de todos los nodos.Para ello necesitamos instalar las herramientas necesarias para conectarnos a una unidad NFS. Desisntalaremos el network-manager para tener más control de la gestión de la red.
Traspasar sistema de archivos de HPCNodo a HPCMaster
Dado que los nodos no dispondrán de disco duro, necesitaremos un espacio en donde poder albergar nuestro sistema operativo, ya que no se trata de un sistema HPC con nodos usando LiveCD. Por ello lo que haremos es traspasar el sistema de archivos de los nodos a otro disco duro físico, que en nuestro caso será el HPC Master (podria ser otro servidor de disco).
- Conectar via NFS
NFS en HPCMaster:
/HPC/nfsroot_node1 192.168.0.1(rw,no_root_squash,async)
Luego ejecutamos sudo exportfs -a y ya habremos empezado a exportar la carpeta /HPC/nfsroot_node1 para la IP 192.168.0.1
NFS en HPCNode
sudo mkdir /mnt/nfsAhora ya tenemos la posibilidad de copiar todo el sistema de archivos a HPCMaster, pero antes copiaremos nuestro kernel al home y crearemos un initrd.img tambien en el home para que cuando hagamos la transferencia de archivos via NFS ya tengamos todo lo necesario en HPCMaster (ya que tanto el kernel como el initrd.img lo necesitará el TFTP de HPCMaster para que arranque el nodo).
sudo mount -t nfs -onolock 192.168.0.100:/HPC/nfsroot1 /mnt/nfs
Guardamos el kernel en uso del Nodo
cp /boot/vmlinuz-`uname -r` ~
Con esto lo habremos copiado al homedir del usuario del nodo
Generar un nuevo initrd
El disco RAM inicial o initrd, por sus siglas en inglés es un sistema de archivos temporal usado por el núcleo Linux durante el inicio del sistema. Es usado típicamente para hacer los arreglos necesarios antes de que el sistema de archivos raíz pueda ser montado. En nuestro caso querremos que esté preparado para poder arrancar un sistema de archivos montado via NFS (y no en local como es lo habitual), con lo cual tendremos que crearlo con los módulos necesarios.
Cambiamos las siguientes opciones en el archivo /etc/initramfs-tools/initramfs.conf:
BOOT=nfsAhora creamos la imagen dentro del home con el siguiente comando:
MODULES=netboot
mkinitramfs -o /home/Copiar archivos:/initrd.img-`uname -r`
Ahora que tenemos todos los archivos que necesitaremos para arrancar via NFS podemos copiarle todo el sistema de archivos en HPCMaster:
sudo cp -ax /. /mnt/nfs/.
sudo cp -ax /dev/. /mnt/nfs/dev/.
Ahora ya tendremos los archivos copiados en HPC Master y sólo nos faltará arrancar el nodo en red para que el HPC Master le sirva el sistema mediante PXE. Para ello tenemos que tener montado el sistema PXE en HPC Master.Una vez instalado (junto a sus dependencias), ya podemos configurarlo correctamente mediante el archivo /etc/dhcp3/dhcpd.conf
#Configuration for the HPC Linux Server
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.1 192.168.0.49;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.0.255;
option routers 192.168.0.100;
filename "pxelinux.0";
}
#HPC Node groups
group {
# option dhcp-class-identifier "PXEClient";
next-server 192.168.0.100;
host node1 {
hardware ethernet 00:11:2f:ca:bb:29;
fixed-address 192.168.0.1;
}
host node2 {
hardware ethernet 00:0f:ea:54:21:4b;
fixed-address 192.168.0.2;
}
}
Con filename le indicamos el archivo de arranque inicial, que en nuestro caso será el pxelinux.0 (que viene con el paquete syslinux) el cual sería el equivalente a GRUB pero en red. Por otro lado se ha creado un grupo para configurar los diferentes nodos y asignarles una IP según su dirección MAC.Ahora ya podemos configurarnos nuestro espacio tftp para el arranque en red:
sudo mkdir -p /var/lib/tftpboot/pxelinux.cfg
sudo cp /usr/lib/syslinux/pxelinux.0 /var/lib/tftpboot
y cambiamos /var/lib/tftpboot/pxelinux.cfg/defaultLABEL linux
KERNEL vmlinuz-2.6.31-14-generic-pae
APPEND root=/dev/nfs initrd=initrd.img-2.6.31-14-generic-pae nfsroot=192.168.0.100:/HPC/nfsroot_node2 ip dhcp rw
Enlaces de interes:
wow, hermoso, sigo navegando en tu pagina, util realmente, entre mas navego, mas me topo con cosas que nunca encontre y son de gran interes para mi, en 15 minutos ya he visto grandiosas cosas, excelente sigue asi
ResponderEliminarBuenas,
ResponderEliminarEn primer lugar felicidades por el blog, es muy completo y tratas temas realmente interesantes.
También te escribo porque he seguido esta guía pero al final me da un error. A la hora de arrancar el cliente diskless, el cliente después de que me coja la ip que le he reservado en la configuración del dhcp, me da un error :
PXE-e32: TFTP open timeout.
Debo añadir, que también he seguido la guía que pones al pie del articulo, en la cual añade un par de puntos más a hacer, concretamente los puntos 4,5,6 del apartado "Creating your NFS installation"
Si sabes a que se debe el que no me esté funcionando o dónde puede que esté cometiendo un error, serías tan amable de indicarlo?
Gracias de antemano y felicidades por el blog de nuevo.
Saludos.
Hola Foxy,
ResponderEliminarme alegro que te haya podido ayudar el blog en algunas cosas :D.
Mira, para hacer un Ubuntu diskless, como habrás visto hay algunos pasos previos (que me has dicho que has seguido). En el paso que te estas encontrando el problema es en el de creación del servidor TFTP. Habrás seguido el artículo http://eithel-inside.blogspot.com/2010/01/crear-un-servidor-pxe-en-ubuntu.html que a su vez te redirije a http://eithel-inside.blogspot.com/2010/01/instalar-un-servidor-tftp.html . Bien, te has asegurado de que RUN_DAEMON="yes" es el archivo /etc/default/tftpd-hpa ?? Podrias ponerme el contenido del archivo /var/lib/tftpboot/pxelinux.cfg/default ?
Saludos y a ver si podemos arreglar el problema.
Buenas noches Eduardo,
ResponderEliminarSiento contestar tan tarde, pensaba que se había publicado mi comentario, pero acabo de ver que no.
Como estaba un poco encallado, he decidido hacer algo más fácil, así que probado con arrancar la iso netboot de ubuntu de la que hablas en la guía de Servidor PXE, y ha ido bien. Sin embargo, intentando arrancar un SO que he volcado desde un cliente en /nfsroot no funciona, dando el error que se ve en mi anterior comentario. He comprobado el archivo /etc/default/tftpd-hpa y está el daemon a "yes" (te pego el contenido):
#Defaults for tftpd-hpa
RUN_DAEMON="yes"
OPTIONS="-l -s /tftpboot"
Y el contenido de /tftpboot/pxelinux.cfg/default que me pides:
LABEL linux
KERNEL vmlinuz-2.6.35-22-generic
APPEND root=/dev/nfs initrd.img-2.6.35-22-generic nfsroot=172.16.1.100:/nfsroot ip=dhcp rw
donde vmlinuz-2.6.35-22-generic es el kernel del equipo cliente y initrd.img-2.6.35-22-generic también lo es del equipo cliente
172.16.1.100 es el Servidor PXE/NFS
y /nfsroot es la carpeta donde he volcado el SO del cliente.
Podrás observar que la organización de carpetas es un pelin distinta a la tuya, eso es porque he seguido en este aspecto la guía de ubuntu, ya que me parecía más sencillo si los directorios estaban directamente en /.
Si necesitas cualquier dato más no dudes en pedirlo y por cierto, muchísimas gracias por la ayuda que me estás prestando.
Un saludo.
Por lo que he podido entender.. la ISO de netboot te funciona siguiendo el tutorial de PXE. De acuerdo.. ¿Puede ser entonces que lo que falle sea cuando lo hacer por NFS?. Cual es el contenido de /etc/initramfs-tools/initramfs.conf ?
ResponderEliminarDespues supongo que harias:
mkinitramfs -o /home//initrd.img-`uname -r`
y lo copias en donde quieres que arranque ese kernel no?
Si puedes mira el /var/log/messages o algun otro log a ver que error podemos ver en el servidor.
Efectivamente, la ISO netboot funciona bien.
ResponderEliminarEl contenido de /etc/initramfs-tools/initramfs.conf está con MODULES=netboot y BOOT=nfs
Despúes hice mkinitramfs -o /home//initrd.img-`uname -r`
Finalmente monté el directorio nfsroot del servidor en el cliente con:
mount -t nfs -onolock 192.168.1.2:/nfsroot /mnt
y copie todo el contenido de "/" del cliente en /mnt que es donde está montado /nfsroot del servidor.
cp -ax /. /mnt/.
cp -ax /dev/. /mnt/dev/.
Todo esto lo hice desde el cliente.
Y a partir de aquí hago los pasos que añade la guía de ubuntu:
En el servidor:
Voy a "/nfsroot" que es donde tengo "/" del equipo cliente y copio "vmlinuz-xxx" e "initrd.img-xxx" (donde xxx es uname -r del cliente) que están en "/nfsroot/home//" a la carpeta "/tftboot" del servidor.
Finalmente hago los pasos 5 y 6 del apartado "Creating your NFS installation" de la guía de ubuntu, aunque sin hacer estos dos últimos tampoco funciona.
En resumen, yo no sé dónde estoy fallando, ya que por lo que veo todo está bien configurado después de revisarlo como 5 veces.
Ves algo tú que no te cuadre?
Por cierto, se que parece que me repito mucho en los pasos, es para evitar confusiones (y aún así parece un poco lioso)
Un saludo y gracias de antemano.
Vaya, parece que la he liado y ahora no me funciona tampoco para la ISO netboot
ResponderEliminarVaya.. pues entonces hemos ido para atrás. Supongo que algún paso no se esta haciendo bien. Lo primero que deberíamos de poder hacer es el ISO netboot.
ResponderEliminarBuenas Eduardo, quería postear el comentario de lo que había hecho pero me he equivocado y lo he hecho en la entrada del servidor tftp, aunque pensándolo bien tampoco está mal ahí puesto que se habla de ello. Supongo que como eres administrador del blog tu puedes editar todo esto si consideras que es necesario.
ResponderEliminarSaludos y gracias de antemano.
Buenas Eduardo, tienes algún límite de palabras para los comentarios? quiero postear una cosa y después de introducir el captcha me dice que esta posteado, sin embargo si refresco la página mi comentario no aparece...
ResponderEliminarBuenas otra vez,
ResponderEliminarFinalmente he conseguido arrancar la ISO netboot de nuevo. El problema estaba en el archivo de configuración del servidor tftp, que cuando añadía las líneas que indicas en la guía
#Defaults for tftpd-hpa
RUN_DAEMON="yes"
OPTIONS="-l -s /tftpboot"
yo comentaba el resto, es decir quedaba así:
root@rpxeserver:/tftpboot# cat /etc/default/tftpd-hpa
# /etc/default/tftpd-hpa
#TFTP_USERNAME="tftp"
#TFTP_DIRECTORY="/tftpboot"
#TFTP_ADDRESS="0.0.0.0:69"
#TFTP_OPTIONS="--secure"
#Defaults for tftpd-hpa
RUN_DAEMON="yes"
OPTIONS="-l -s /tftpboot"
He sabido donde estaba el problema ya que he encontrado una fuente recomendaba revisar si el servidor tftp estaba corriendo y habría un puerto para escuchar las peticiones.
# ps aux | grep tftpd
root 9446 0.0 0.0 2200 308 ? Ss 12:58 0:00
/usr/sbin/in.tftpd -v -l -s /var/lib/tftpboot
# netstat -plun | grep tftp
udp 0 0 0.0.0.0:69 0.0.0.0:* 9446/in.tftpd
donde en el segundo caso a mi me lo devolvía vacío. Entonces he recordado que en el archivo de configuración aparecia algo de 0.0.0.0:69 y efectivamente estaba ahí pero comentado, así que en el momento que lo he descomentado ha vuelto a funcionar. En fin, voy a probar de hacer el volcado de nuevo del SO cliente a ver si ahora me funciona. Ya te comentaré.
Saludos.
Ostras, veo que finalmente has podido. No te he podido contestar antes. No obstante, si quieres búscame en facebook (EiTheL InSiDe esta en facebook) e igual podemos hablar más directamente por correo.
ResponderEliminar¡Saludos!
Buenas Eduardo, sabía que estabas en el facebook, pero como no soy muy de redes sociales no lo había tomado como opción, pero no me importa el medio de comunicación, si prefieres facebook pues así sea. Por otro lado, podría ser que para futuros lectores les fuera mejor leerlo desde tu blog, aunque con lo extenso que está el facebook quién sabe. Y si lo prefieres por mail, pues también puedo al final postear dónde me encallaba y cuál era la solución para posible gente que le ocurra lo que a mi.
ResponderEliminarCambiando de tema, como ya he dicho, la ISO netboot de ubuntu me arranca por red, pero un SO ya instalado y volcado en /nfsroot del servidor PXE/NFS no. Se me queda en la siguiente pantalla:
http://img810.yfrog.com/img810/893/capturaol.png
Yo seguiré indagando para ver si consigo terminar este primer paso de mi proyecto (que no es arrancar ubuntu, sino slax para pc's muy muy viejos y también un servidor con eyeOS, el SO de unos vecinos de barcelona)
Bueno un saludo y ya me dirás por donde prefieres que hablemos.
PD. Siento ese "habria" del verbo abrir en mi anterior comentario, cuando lo he visto hace un rato he flipado jajaja
Ah nono, por mi ya me esta bien por el blog. Era más que nada para poder hablar más comodo. Por aqui no suelo dar el correo ;)
ResponderEliminarA ver, pues tal como veo yo en la foto, falla justo cuando va a buscar el pxelinux.cnf/default . Deberias tener algo como
LABEL linux
KERNEL vmlinuz-2.6.31-14-generic-pae
APPEND root=/dev/nfs initrd=initrd.img-2.6.31-14-generic-pae nfsroot=192.168.0.100:/HPC/nfsroot_node2 ip dhcp rw
en donde le estas diciendo que arrancará via NFS cargando el initrd que creaste en pasos anteriores mediante el comando mkinitramfs . Luego si te fijas, le dices que la raiz NFS esta en el servidor 192.168.0.100 en la carpeta /HPC/nfsroot_node2 . Asi que tienes que tener claro que en el servidor NFS tienes que habilitar en el archivo /etc/exports que acepte peticiones de ese rango de ips.
¿Tienes todo eso en orden?
Buenas días Eduardo,
ResponderEliminarSi te fijas en la captura, en la línea que pone trying to load: pxelinux.cfg/default a la derecha pone "OK". No sé si es que se refiere a que almenos el intento se ha completado exitosamente, o que lo ha conseguido cargar, pero como bien dices tu, abajo parece decir que no lo haya encontrado o bien no le cuadre algo.
Desde mi punto de vista el archivo default está en orden.
Entiendo que donde pone KERNEL hay que poner el kernel del equipo cliente que se ha copiado previamente en /tftpboot y lo mismo para el initrd.img-xxx. Finalmente en nfsroot="ip":/carpeta va la ip del servidor nfs y la ruta desde "/" a la carpeta nfs del servidor.
En mi caso quedaría así:
LABEL linux
KERNEL vmlinuz-2.6.35-22-generic
APPEND root=/dev/nfs initrd.img-2.6.35-22-generic nfsroot=172.16.1.100:/nfsroot ip=dhcp rw
Sin embargo me desconciertan algunas cosas. En tu guía pone 192.168.0.100:/HPC/nfsroot_node2 cuando más arriba haces referencia al nodo1, cito textualmente "Luego ejecutamos sudo exportfs -a y ya habremos empezado a exportar la carpeta /HPC/nfsroot_node1 ..."
Por otro lado, en las opciones de nfsroot tu pones ip dhcp y en la guía de ubuntu ip=dhcp.
Podrías aclararme si está todo correcto?
Saludos.
Buenas Eduardo, no sé si lo siguiente se puede considerar como un progreso, pero partiendo de la captura que he puesto en el comentario anterior, ahí donde pone "boot:" que se queda esperando a que el usuario haga algo, si le introduces "linux" carga el vmlinuz-2.6.35-22-generic (http://imageshack.us/photo/my-images/685/captura3w.png/) hasta que se detiene en lo que parece un error (http://imageshack.us/photo/my-images/824/captura2hh.png/).
ResponderEliminarSi te fijas, en esta última captura, por el medio de la pantalla dice: VFS cannot open root device "nfs" or unknown-block(0,255).
Sospecho que o bien es del archivo default cuando en APPEND especificas root=/dev/nfs o bien en el fstab del cliente que cambio el / por "/dev/nfs / nfs defaults 1 1" (ver punto 6 del apartado Creating your NFS installation de la guía de help.ubuntu.org). En mi caso el archivo fstab del cliente esta volcado en /nfsroot del servidor PXE/NFS.
Saludos!
Buenas Eduardo, sigo parado en el error (http://imageshack.us/f/824/captura2hh.png/). He probado de cambiar lo que sospechaba que fallaba, pero sigo sin solucionar nada. Siempre se me quedo en el mismo punto. Tienes alguna idea a que se puede deber?. He mirado foros y de todo pero no saco nada en claro.
ResponderEliminarVoy a probar ahora con una instalación debian sin gui ni nada tanto en servidor como cliente a ver si sale algo.
Si tienes alguna idea que probar, lo más mínimo, dímelo por favor, a ver si sale.
Saludos.
Hola Foxy,
ResponderEliminara mi lo único que se me ocurre es que, paso por paso, vuelvas a empezar el proceso, pero SÓLO basandote en un tutorial. Te diria que te basases en el mio ya que creo que si te sale alguna duda podemos hablarlo más facil. Hazlo tal cual yo lo he puesto, aunque creas que no afecta. Lo digo pq antes de postear aqui, hice el proceso como prototipo y escribí todos los pasos. Luego, con este manual, empezando de 0 volví a instalarlo todo siguiendo estos pasos y siempre funcionó correctamente. Usa ubuntu en las dos distros, no sea que algun driver o algo no sea igual. Vamos.. intenta replicarlo exactamente (incluido nombre de carpetas, etc).
No deberia fallar. Si falla es que igual en el tutorial obvié algun paso... No he tenido tiempo de rehacerlo todo, pero si lo pruebas y te falla de nuevo mirare de recrearlo todo paso a paso (tb te puedo luego pasar las máquinas virtuales hechas por ftp..)
Saludos y suerte!
Buenos días Eduardo,
ResponderEliminarGracias por responder, ahora mismo empezaré a preparar las máquinas cliente y servidor para seguir tu guía al pie de la letra.
Por cierto podrías aclararme unas cosa que te pregunte anteriormente para poder seguir con total seguridad tu guía?
Sugieres poner en /tftpboot/pxelinux.cfg/default lo siguiente:
LABEL linux
KERNEL vmlinuz-2.6.31-14-generic-pae
APPEND root=/dev/nfs initrd=initrd.img-2.6.31-14-generic-pae nfsroot=192.168.0.100:/HPC/nfsroot_node2 ip dhcp rw
En primer lugar aquí haces referencia a /HPC/nfsroot_node2 cuando hasta ahora sólo habías usado nfsroot_node1.
En segundo lugar los parámetros pasados en nfsroot pones "ip dchp rw", cuando en otras webs (entre ellas la guía de help.ubuntu.org) ponen "ip=dhcp rw". Está bien en ambos casos o cuál debo usar?
Por cierto hasta ahora he usado siempre ubuntu 10.10 desktop edition en un entorno virtualizado con virtualbox. Te parece bien si sigo con esta configuración?
Gracias y un saludo.
Hola foxy,
ResponderEliminarlo de /HPC/nfsroot_node2 y /HPC/nfsroot_node1 es pq realmente lo hice con 20 nodos, y a cada nodo lo llamé con una numeración diferente. Así pues, y para no liarla, tu llámalo /HPC/nfsroot_node1 (ya que sólo vas a tener un nodo).
Sobre lo de "ip dchp rw" , decirte que yo no se que pone la guia help.ubuntu.org .. pero te puedo decir que tal como lo pongo en el tutorial es un 'cortar y pegar' de la configuración con la que experimenté. Por ello te aconsejaba que SOLO usaras un tutorial, asi es más facil seguir los errores.
Espero que te funcione! :D
Este comentario ha sido eliminado por el autor.
ResponderEliminarBuenas tardes Eduardo,
ResponderEliminarFinalmente lo he conseguido siguiendo tu guía, pero con dos pequeñas variaciones. La primera es que no he usado ubuntu al final, sino debian, tanto en cliente como en servidor.
Así consegui arrancar un SO completo por pxe, pero sólo en modo command shell.
Para mi esto ya fue un gran paso aunque le faltaba una parte, pues el SO cliente tenía que cargar la interfaz gráfica y no lo hacía. En vez de eso, al arrancar daba un aviso que no encontraba el swap, y a continuación te informaba que cargaba linux en recovery mode. Para solucionar esto, lo único que tuve que hacer es quitar del fstab cliente, las lineas que indicaban como montar las particiones del disco, y añadir otra:
/dev/nfs / nfs defaults 1 1
Tras esto el SO cliente cargó completamente.
Y bien es todo, ahora tengo que cambiar ciertas cosas porque si arranco varios equipos con el mismo SO cliente, se pisan un poco y no van demasiado bien.
Pero bueno, ni mucho menos se ha acabado aquí mi proyecto, si bien el tuyo fue crear un cluster de alto rendimiento, el mio es poder aprovechar 40 PC's muy viejos que muchos tienen el disco duro tan pequeño que apenas cabe un SO, de ahí que quiera usar Slax como SO cliente.
En cuanto a lo de por qué no me ha funcionado ubuntu, pues sinceramente estoy en blanco. Seguí tu guía al pie de la letra, y la que pones como enlace de interés al pie de este artículo también (de hecho son completamente iguales punto a punto, a excepción de dos puntos extra al final en la de help.ubuntu.com) y nada, no hubo forma de hacerlo funcionar. Pero bueno no me importa ya que ubuntu sólo era para aprender a arrancar por red, y ya lo he conseguido con debian así que perfecto.
Bueno ya te contaré como avanza el asunto. Creo que lo de poder hacer que varios clientes arranquen simultaneamente con el mismo "/" en el servidor, me traerá más de uno y de dos dolores de cabeza.
Un saludo!