PXE booting
Da PiemonteWireless.
Installazione di Ubuntu da remoto tramite PXE
Vi sarà capitato di dover installare Linux su una macchina senza CDRom, o di non averne uno a portata. La soluzione è PXE (Preboot Execution Environment), ovvero un metodo per eseguire il boot di un computer tramite ethernet.
Per prima cosa occorre installere un server DHCP (vedi qui).
Poi aggiungiamo le seguenti righe al file di configurazione del DHCP, ovvero dhcpd.conf
next-server 192.168.50.1; filename "pxelinux.0";
dove 192.168.50.1 è l'IP del server su cui stiamo lavorando.
Adesso installiamo il server TFTP (Trivial file transfer protocol) ed anche un client per fare testing:
$ sudo apt-get install tftpd-hpa tftp-hpa
Abilitiamo il server TFTP e settiamone la directory di lavoro:
$ sudo vim /etc/default/tftpd-hpa
# /etc/default/tftpd-hpa RUN_DAEMON="yes" OPTIONS="-l -s /home/pxetero/"
Aggiungiamo un utente per il servizio TFTP:
$ sudo adduser pxetero
Devo permettere al mio utente di modificare la directory /home/pxetero (sostituite lo user simone con il vostro):
$ whoami simone $ sudo chown pxetero.simone /home/pxetero/ $ sudo chmod g+rwx /home/pxetero
Adesso scarichiamo i files necessari per il boot da rete (qui uso un mirror italiano):
$ cd /home/pxetero $ wget -np -r http://na.mirror.garr.it/ubuntu/dists/gutsy/main/installer-amd64/current/images/netboot/ -e robots=off $ mv na.mirror.garr.it/ubuntu/dists/gutsy/main/installer-amd64/current/images/netboot/* . $ rm -rf archive.ubuntu.com/
Cambiate il comando wget qui sopra a seconda della versione che volete di Ubuntu (breezy, dapper, feisty, gutsy) e della vostra architettura (x86, amd64, etc...). Quindi testiamo il server TFTP:
$ sudo /etc/init.d/tftpd-hpa start $ cd $ tftp localhost -c get pxelinux.0 $ ls pxelinux.0 pxelinux.0
Se tutto funziona bene, riavviamo il server DHCP:
$ sudo /etc/init.d/dhcp3-server start
Abbiamo terminato l'installazione del server TFTP. Possiamo avviare il computer su cui vogliamo installare Ubuntu da rete (quello con l'indirizzo MAC nel dhcpd.conf). L'installazione dovrebbe partire automaticamente.

