- Installer tftptd-hpa
sudo apt-get install tftpd-hpa
- Editer le fichier
sudo vi /etc/default/tftpd-hpa
- et y mettre
#Defaults for tftpd-hpa RUN_DAEMON="yes" OPTIONS="-l -c -u pcr -s /var/lib/tftpboot
Régler les questions de droits
sudo chown pcr:pcr /var/lib/tftpboot/ -R sudo chmod 1777 /var/lib/tftpboot/
- Redémarrer le serveur tftpd
sudo /etc/init.d/tftpd-hpa restart
- Tester le serveur
touch toto tftp 192.168.0.1 tftp> put toto
Sur le serveur on devrait retrouver un fichier toto
- Préparation des fichiers de boot pxe
wget http://archive.ubuntu.com/ubuntu/dists/[$DISTRO]/main/installer-i386/current/images/netboot/netboot.tar.gz tar -xvzf netboot.tar.gz
- Montage de l'image Ubuntu
sudo mount -o loop -t iso9660 /path/to/ubuntu.iso /media/cdrom0/
- Copie du noyeau du LiveCD pour le boot
cp /media/cdrom0/casper/vmlinuz . cp /media/cdrom0/casper/initrd.gz .
Théoriquement, si vosu vous êtes servis de votre machine, vous devriez avour le noyeau et l'initrd les plus à jour
Rajouter les entrées
vi pxelinux.cfg/default
LABEL LiveCD kernel vmlinuz append initrd=initrd.gz boot=casper netboot=nfs nfsroot=192.168.0.1:/media/cdrom0
- Installation du serveur nfs
sudo apt-get install nfs-kernel-server
et rajouter à la liste des exports
/media/cdrom0 192.168.0.0/24(ro,async)
et redémarrer le serveur nfs
service nfs-kernel-server restart
- Installation du serveur DHCP
sudo apt-get install dhcp3-server sudo vi /etc/dhcp3/dhcpd.conf
- Mise à jour de la configuration
#DNS ddns-update-style none; option domain-name-servers [Votre serveur dns]; option domain-name "auf.org"; #Baux DHCP default-lease-time 600; max-lease-time 7200; log-facility local7; #reseau subnet 192.168.0.0 netmask 255.255.255.0 { option broadcast-address 192.168.0.255; option routers 192.168.0.1; range 192.168.0.6 192.168.0.8; filename "pxelinux.0"; next-server 192.168.0.1; ping-check = 1; } #on autorise le boot distant allow bootp; allow booting;
Et ne pas oublier de configurer l'interface du serveur dhcp en statique
vi /etc/network/interfaces
et ajouter
auto eth0 iface eth0 inet static address 192.168.0.1 netmask 255.255.255.0 broadcast 192.168.0.255 network 192.168.0.0 gateway 192.168.10.254
Préciser l'interface d'écoute
sudo vi /etc/default/dhcp3-server
INTERFACES="eth0"
redemarer les services
sudo service dhcp3-server restart sudo service networking restart
Bon maintenant, connecter un client sur le le même switch que le port serveur et démarrer dessus