4Trabes Historias de una empresa en 100 metros cuadrados

El blog de Trabe Soluciones

Instalar Ubuntu sin CDs, DVDs ni dispositivos USB utilizando únicamente la red (PXE)

| | Comentarios

El título ha quedado un poco largo, pero eso es exactamente lo que acabo de hacer hace un rato, y como me parece algo interesante, voy a explicar brevemente cómo conseguirlo.

La base del proceso es PXE, que para definirlo en pocas palabras viene a ser un “modo de arrancar un ordenador” utilizando para ello únicamente el interfáz de red. Como podéis ver en el enlace a la wikipedia, PXE es básicamente una mezcla de DHCP y TFTP.

Paso 1: el ordenador ha de ser capaz de arrancar desde la red

Para poder instalar nuestro sistema utilizando esta tática, es necesario que éste sea capaz de hacer el boot desde un dispositivo de red. La mayoría de los PCs soportan esta característica, por lo que no debería de ser un requisito difícil de satisfacer. Una vez que nos aseguremos de que el PC “sabe arrancar desde la red”, ya solo nos falta instalar un servidor que le responda adecuadamente a sus peticiones.

Paso 2: instalar el servidor

En este caso, el ordenador que va a servir los ficheros de arranque es un humilde PC con windows ya instalado, por lo que la herramienta que utilizaremos es TFTPD32. Esta herramienta es una de esas pequeñas joyas que a cambio de muy pocos KB son capaces de hacer un montón de cosas, como podéis observar en la página del autor.

Una vez descargado el programa, ponerlo a funcionar es tan simple como crear una carpeta, digamos que c:\tftp y copiar en ella el fichero tftpd32.exe. Lo ejecutamos y ya tenemos el servidor andando. Así de fácil.

Paso 3: descargarse la imagen de ubuntu peparada para estas labores

El siguiente paso será descargarse la imagen de ubuntu lista para ser servida utilizando PXE. Para conseguir este objetivo tendremos que descargarnos la carpeta ubuntu-installer que podremos encontrar en el respositorio de ubuntu. En mi caso particular, esta carpeta podía descargarse de:

1
ftp://archive.ubuntu.com/ubuntu/dists/hardy/main/installer-i386/current/images

Paso 4: configurar el servidor

Una vez descargada esta carpeta, deberemos de copiarla en c:\tftp. Además, debemos de asegurarnos de:

  • copiar a c:\tftp la carpeta pxelinux.cfg desde ubuntu-installer/i386/
  • copiar a c:\tftp el fichero pxelinux.0 desde ubuntu-installer/i386/

Ahora ya podemos configurar el tftpd32. En la pestaña DHCP, deberemos poner ‘pxelinux.0’ en el campo boot file y deberemos rellenar el resto de valores ajustándose a la realidad de nuestra red. Es importante que el valor del campo ‘IP pool starting address’ sea una IP válida en nuestra red y que se refiera a un rango de IPs no utilizado en la misma. Una vez cubiertos todos los campos, pulsamos save y ya tenemos nuestro servidor configurado. Así de fácil,

Paso 5: arrancar el pc que queremos instalar

Con nuestro servidor perfectamente configurado, ya podemos arrancar el pc en el que queremos instalar ubuntu. Si todo va bien y los cables están bien enchufados, podremos ver que comienzan a aparecer entradas en la pestaña ‘Log viewer’ de tftpd32. Se establece la comunicación entre el PC que arranca utilizando PXE y nuestro servidor. Al cabo de unos instantes, el PC que está tratando de arrancar acaba recibiendo por TFTP la imagen de instalación basada en red de ubuntu. A partir de ahi sólo nos queda continuar con una instalación basada en red de lo más normal, (lenta), y aburrida.

Lo sentimos, pero los comentarios están cerrados

Buen tutorial chicos!

Tenéis una errata sin importancia en el cuadro donde mostráis la URL, le falta “/netboot” al final.

También deciros que en la UDC hay mirrors de Ubuntu, que para los usuarios de R va como un fuego!!! (para mitigar en la medida de lo posible lo de instalación “lenta”):
ftp://ftp.udc.es/ubuntu/dists/hardy/main/installer-ARCH/current/images/netboot

Recordar también que Ubuntu está precompilada para 4 arquitecturas (ARCH): i386, amd64, powerpC y sparc.

-——————————————————————-

Respecto a lo de instalarlo por Internet no es estrictamente necesario si usais una máquina con Linux para el servidor TFTP y DHCP, donde además montais la ISO de Ubuntu localmente en /var/www/ubuntu (por ejemplo), con “mount -o loop” y usando Apache para servirla.

Así, una vez comience la instalación por PXE, cuando pida seleccionar un servidor (lista de países), hay que ir arriba al principio de la lista y meter una direccion manualmente, en este caso la IP de nuestro servidor local.

Más info aqui:
http://www.ubuntu-es.org/index.php?q=node/35185


Saludos!!!

06/Jul/2008 JRodas