* 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 :)