sudo apt-get install tftpd-hpa

sudo vi /etc/default/tftpd-hpa

#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/

sudo /etc/init.d/tftpd-hpa restart

touch toto
tftp 192.168.0.1
tftp> put toto

Sur le serveur on devrait retrouver un fichier toto

wget http://archive.ubuntu.com/ubuntu/dists/[$DISTRO]/main/installer-i386/current/images/netboot/netboot.tar.gz
tar -xvzf netboot.tar.gz

sudo mount -o loop -t iso9660 /path/to/ubuntu.iso /media/cdrom0/

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

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

sudo apt-get install dhcp3-server
sudo vi /etc/dhcp3/dhcpd.conf

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

ZAO/Réunions/201201/netboot (dernière édition le 2012-01-17 18:28:48 par FranckKouyami)