T42 mit Debian aus dem Netz booten

Ganz gemäss Bob dem Baumeister geht es nun daran auf Basis der bisherigen Netbooterfahrungen einen alten T42 aus dem Netz zu booten. Abgesehen von den Festplattenaktivitäten ist der eigentlich noch schnell genug.

Hilfreich hierbei waren dies und dieses Dokument.

Voraussetzungen:

  • DNS / TFTP Server sind für PXE booten vorbereitet siehe hier
  • der Client Rechner ist auf der Festplatte fertig installiert

Zuerst erstelle ich einen weiteren Menueintrag für das Bootmenu auf dem TFTP Server

vi pxelinux.cfg/diskless.conf
 label T42 Diskless
 MENU LABEL T42 Diskless
 KERNEL diskless/vmlinuz-3.2.0-4-486
 append root=/dev/nfs initrd=diskless//initrd.img.netboot nfsroot=your.nfs.sever:/diskless-nfsroot ip=dhcp rw

und binde diesen neuen Menueintrag in die Startkonfiguration ein.

vi pxelinux.cfg/default 
 DEFAULT linux
 prompt 0
 timeout 0
 MENU INCLUDE /pxelinux.cfg/debian-silent-install.conf
 **MENU INCLUDE /pxelinux.cfg/diskless.conf**
 include debian-installer/i386/boot-screens/menu.cfg
 default debian-installer/i386/boot-screens/vesamenu.c32

Auf dem NAS Laufwerk habe ich ein Dataset und einen NFS Share eingerichtet auf dem gleich das Betriebssystem des Clients landen soll.

Die nächste Schritte geschehen auf dem Client. Dieser hat bisher seine Konfiguration auf der Festplatte, soll aber später ohne Festplatte aus dem Netz booten.

Wenn noch nicht geschehen:

apt-get install nfs-common initramfs-tools 

In der /etc/fstab müssen wir die normalen Festplattenmounts auskommentieren und diese müssen neuen eingeführt werden:

vi /etc/fstab
   /dev/nfs        /               nfs     defaults 0 0
   none            /tmp            tmpfs   defaults 0 0
   none            /var/run        tmpfs   defaults 0 0
   none            /var/lock       tmpfs   defaults 0 0
   none            /var/tmp        tmpfs   defaults 0 0
   none            /media          tmpfs   defaults 0 0

Die bisherige Festplattenkonfiguration muss auf Netboot umgestellt werden

vi /etc/initramfs-tools/initramfs.conf
   MODULES=netboot
   BOOT=nfs
mkinitramfs -o initrd.img.netboot
mv initrd.img.netboot /boot/

und die Netzwerkkonfiguration geändert werden

vi /etc/network/interfaces 
   #allow-hotplug eth0  
   iface eth0 inet manual  

Jetzt ist der Moment gekommen an dem der komplette Festplatteninhalt auf das zukünftige NFS Share kopiert wird.

 mount -t nfs  your.nfs.server:/mnt/FirstPool/diskless-nfsroot-1  /mnt
 cp -axv /. /mnt/.  
 cp -axv /dev/. /mnt/dev/. 
 umount /mnt/

und die gerade erzeugte initramfs muss an die richtige Stelle auf dem TFTP Server

mount -t nfs  your.nfs.server:/mnt/FirstPool/tftproot  /mnt
cp /boot/initrd.img.netboot /mnt/diskless/
cp /boot/vmlinuz-3.2.0-4-486 /mnt/diskless

Fertig. Jetzt sollte man aus Netzwerk booten können und im Bootmenu einen neuen Eintrag vorfinden der einen ohne Festplatte in das Debian bringt. Kann man gut mit einer Virtualbox testen.