Hace un par de días me tuve que realizar una charla linux en un colegio y la instalación de alguna distribución, el problema era la gran gantidad de pc que necesitaban la versión live para poder enseñar, por lo que se me ocurrio dejar mi notebook como servidor de PXE para que los otros se conectaran y pudieran tomar la distribución y poder instalarla. Revisé miles de tutoriales y ninguno hablaba de poder dejar disponible además, la versión live de ubuntu, solamente hablaban de texto, por lo que mezcle información de todos lados hasta llegar a una forma de poder lograrlo a la perfección (exceptuando que eran tantos pc conectados al mío que terminaron colapsando la red xD), por lo que pude salir de apuros con un solo notebook y la red interna que existía.
Para comenzar debemos instalar los siguientes programas:
Pero primero vamos a estar en el supuesto de que nuestro pc no es un servidor DHCP, aún así se puede hacer , mezclando un poco con el tema anterior que publiqué.
He creado una Interfaz gráfica para que puedan instalar ubuntu por la red
Continuemos ..
apt-get install dnsmasq atftp tftpd-hpa tftp-hpa xinetd nfs-kernel-server portmap
una vez instalados, comenzamos con la configuración:
abrimos en una terminal lo siguiente
sudo gedit /etc/dnsmasq.conf
y agregamos lo siguiente al final del documento.
dhcp-range=192.168.2.2,192.168.2.200,12h enable-tftp tftp-root=/var/lib/tftpboot dhcp-boot=pxelinux.0 dhcp-option=3,192.168.2.1 dhcp-option=6,192.168.2.1
tftp-root, corresponde al directorio en donde estarán los archivos del disco.
noten que pongo 2 veces 192.168.2.1 esta es la dirección del servidor DHCP en ambos
guardamos y cerramos.
configuramos este otro archivo:
sudo gedit /etc/xinetd.d/tftp
y añadimos:
service tftp { disable = no socket_type = dgram wait = yes user = root server = /usr/sbin/in.tftpd server_args = -v -s /var/lib/tftpboot interface = 192.168.2.125 }
aquí solamente deben modificar lo que es el server_args con su directorio y
la interface, la cual es la ip que tu pc tiene ahora
adicionalmente, pueden limitar añadiendo la ip de la máquina cliente poniendo
only_from = 192.168.2.44/28 por ejemplo, en donde solamente ese pc podrá tener acceso
ahora bajamos desde la pagina de ubuntu los archivos necesarios
dependiendo de la versión que quieran instalar
http://cdimage.ubuntu.com/netboot/
lo descomprimimos e instalamos en el directorio de tftpboot,
luego hacemos lo mismo con todo el contenido del cd/imagen de ubuntu(inclusive la carpeta .disk)
y le damos permisos.
sudo chown -R nobody:nogroup /var/lib/tftpbootsudo chmod 777 -R /var/lib/tftpboot
hasta ahora todo eso es necesario para hacer uso de la instalación sin la versión live.
para añadir la versión live, hacemos lo siguiente:
modificamos nfs server, añadiendo nuestro directorio a compartir
sudo gedit /etc/exports
y añadimos al final del cocumento
/var/lib/tftpboot 192.168.2.0/255.255.255.0(no_root_squash,async,no_subtree_check,ro)
ahora añadir la entrada al menú:
abrimos(en mi caso haré una instalación de ubuntu de 32bits)
sudo gedit /var/lib/tftpboot/ubuntu-installer/i386/boot-screens/txt.cfg
y añadimos en el orden que queremos que aparezca en mi caso l puse de los primeros:
LABEL Probar ubuntu sin instalar kernel casper/vmlinuz append root=/dev/nfs boot=casper netboot=nfs
nfsroot=192.168.2.125:/var/lib/tftpboot/ initrd=casper/initrd.lz quiet splash --
importante que la ip que sale ahí es la ip de su computador.
con esto ya tenemos todo configurado para hacer una versión live de ubuntu por red.
reiniciamos los servicio:
invoke-rc.d dnsmasq restart
sudo /etc/init.d/nfs-kernel-server restart
sudo /etc/init.d/xinetd restart
y bueno sería todo, basta reiniciar la máquinacliente y este recivirá la versión live.
cualquier problema prueben reiniciar su máquina.
saludos.
Hola Daniel, estoy probando tu post pero no encuentro el directorio: /etc/xinetd.d/tftp a pesar de que he instalado todo lo que pides, lo estoy haciendo en ubuntu 11.04, me podrías ayudar diciéndome que estoy haciendo mal. Gracias de antemano.
ResponderEliminarhay que crearlo
Eliminar