Server PXE · 3 min read · Sep 14, 2025
Impostare un server di installazione PXE per più distribuzioni Linux con Ubuntu Edgy Eft
Impostare un server di installazione PXE per più distribuzioni Linux con Ubuntu Edgy Eft
Versione 1.0
Autore: Falko Timme
Questo tutorial mostra come impostare un server di installazione PXE (abbreviazione di p reboot e x ecution e nvironment) con Ubuntu 6.10 (Edgy Eft). Un server di installazione PXE consente ai computer client di avviarsi e installare una distribuzione Linux tramite la rete, senza la necessità di masterizzare immagini iso di Linux su un CD/DVD, immagini di floppy avviabili, ecc. Questo è utile se i tuoi computer client non hanno unità CD o floppy, o se desideri configurare più computer contemporaneamente (ad esempio, in una grande azienda), o semplicemente perché vuoi risparmiare i soldi per i CD/DVD. In questo articolo mostro come configurare un server PXE che ti consente di avviare più distribuzioni: Ubuntu Edgy/Dapper, Debian Etch/Sarge, Fedora Core 6, CentOS 4.4, OpenSuSE 10.2 e Mandriva 2007.
Voglio dire prima di tutto che questo non è l’unico modo per impostare un sistema del genere. Ci sono molti modi per raggiungere questo obiettivo, ma questo è il modo che scelgo. Non rilascio alcuna garanzia che questo funzionerà per te!
1 Nota preliminare
È importante avere una connessione internet decente perché i tuoi computer client scaricheranno tutti i pacchetti necessari dai repository su internet (ho testato questo su una connessione ADSL2+ a 16MBit che sembra essere abbastanza veloce. ;-)). È possibile memorizzare tutti i pacchetti sul server PXE in modo da non aver bisogno di una connessione internet (solo la connessione LAN al server PXE), ma in tal caso avrai bisogno di molto spazio di archiviazione sul server PXE (ricorda, servirà più distribuzioni), quindi non ne parlo qui.
E la cosa più importante è che i tuoi computer client supportino l’avvio tramite rete. Dovresti controllare il BIOS di ogni computer per questa opzione.
Sul nostro sistema che dovrebbe fungere da server PXE dovresti aver già impostato un sistema server Ubuntu 6.10 di base, ad esempio come mostrato nelle pagine 1 - 3 di questo tutorial: https://www.howtoforge.com/perfect_setup_ubuntu_6.10
Preferisco eseguire tutti i passaggi qui come utente root. Quindi, se non hai già creato un login root, dovresti farlo ora:
sudo passwd rootDopo, accedi come root:
suSe desideri lavorare come utente normale invece di root, ricorda di mettere sudo davanti a tutti i comandi mostrati in questo tutorial. Quindi, quando eseguo
apt-get updatedovresti eseguire
sudo apt-get updateinvece, ecc.
2 Installa tutti i pacchetti necessari
Per prima cosa aggiorniamo il nostro database dei pacchetti eseguendo
apt-get updateDobbiamo installare i pacchetti netkit-inetd, tftpd-hpa, dhcp3-server e lftp, quindi eseguiamo
apt-get install netkit-inetd tftpd-hpa dhcp3-server lftp Dopo, esegui
netstat -uape controlla se vedi qualcosa del genere:
root@server1:~# netstat -uap
Connessioni Internet attive (server e stabilite)
Proto Recv-Q Send-Q Indirizzo locale Indirizzo estero Stato PID/Nome programma
udp 0 0 *:tftp
Se non vedi la riga tftp, apri /etc/inetd.conf e assicurati di trovare quanto segue:
vi /etc/inetd.conf| [...] #:BOOT: Il servizio Tftp è fornito principalmente per l'avvio. La maggior parte dei siti # lo esegue solo su macchine che fungono da "server di avvio." tftp dgram udp wait root /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s /var/lib/tftpboot [...] |
Poi riavvia inetd:
/etc/init.d/inetd restart3 Configura il server DHCP
Abbiamo bisogno di un server DHCP nella nostra rete locale. Se non c’è un server DHCP nella tua rete locale, configura e utilizza quello sul tuo futuro server PXE. Modifica semplicemente /etc/dhcp3/dhcpd.conf:
cp /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf_orig
cat /dev/null > /etc/dhcp3/dhcpd.conf
vi /etc/dhcp3/dhcpd.conf| option domain-name-servers 145.253.2.75, 193.174.32.18; times di affitto predefiniti 86400; tempo massimo di affitto 604800; autoritativo; subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.10 192.168.0.49; filename "pxelinux.0"; option subnet-mask 255.255.255.0; option broadcast-address 192.168.0.255; option routers 192.168.0.1; } |
Questo assegnerà dinamicamente indirizzi IP dall’intervallo 192.168.0.10 a 192.168.0.49 ai tuoi computer client; il gateway è 192.168.0.1. Naturalmente, devi adattare questa configurazione al tuo ambiente!
È importante che tu abbia la riga
filename "pxelinux.0";nella tua configurazione!
Poi riavvia il tuo server DHCP:
/etc/init.d/dhcp3-server restart Se hai già un server DHCP nella tua rete, devi modificare la sua configurazione. Supponiamo che tu abbia qualcosa del genere
| subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.10 192.168.0.49; option subnet-mask 255.255.255.0; option broadcast-address 192.168.0.255; option routers 192.168.0.1; } |
nella configurazione. Devi aggiungere
filename “pxelinux.0”;
next-server 192.168.0.100;
ad essa (dove 192.168.0.100 è l’indirizzo IP del nostro server PXE Ubuntu) in modo che appaia così:
| subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.10 192.168.0.49; option subnet-mask 255.255.255.0; option broadcast-address 192.168.0.255; option routers 192.168.0.1; filename "pxelinux.0"; next-server 192.168.0.100; } |
Poi riavvia il tuo server DHCP.
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.