SuSE Linux 9.2: PXE einrichten
PXE wird verwendet um einen oder mehrere Rechner via Netzwerk vom Server booten zu lassen. Dadurch kann man sich die langsamen und unzähligen Boot-Disketten sparen.
Bevor mit der eigentlichen Konfiguration begonnen wird, muss man einen funktionierenden DHCP-Server haben. Damit Sie einen PXE-Server einrichten können, müssen Sie die Pakete tftp, mtools, syslinux, bootsplash, bootsplash-theme-SuSE, mit allen benötigten Paketen installieren.
Nach der Installation müssen Sie die Datei /etc/xinetd.d/tftp etwas anpassen.
suse92:~ # mcedit /etc/xinetd.d/tftp
Suchen Sie nun die folgende Zeile und löschen diese:
disable = yes
Jetzt müssen Sie den xinetd neu starten.
suse92:~ # rcxinetd restart
Da dem PXE-Client auch mitgeteilt werden muss wer der PXE-Server ist und wo das Boot-Image liegt, müssen Sie nun die dhcpd.conf anpassen.
suse92:~ # mcedit /etc/dhcpd.conf
Fügen Sie nun die folgenden Zeilen am Anfang der dhcpd.conf ein:
allow booting;
allow bootp;
allow bootp;
Sollte der PXE-Server nicht auf dem DHCP-Server laufen, müssen Sie mit folgender Zeile die IP-Adresse des PXE-Servers angeben.
next-server 192.168.10.2;
Unter filename muss das PXE-Menü angegeben werden. Da wir PXELINUX verwenden muss dieser Eintrag so aussehen:
filename "pxelinux.0";
Nachdem Sie die dhcpd.conf angepasst haben, müssen Sie den DHCP-Server neu starten.
suse92:~ # rcdhcpd restart
Da wir aber noch kein Boot-Image erstellt haben, wird der Client nur eine IP-Adresse zugewiesen bekommen und dann abbrechen. Deshalb erstellen Sie jetzt das Verzeichnis /tftpboot und kopieren die Datei /usr/share/syslinux/pxelinux.0 in dieses Verzeichnis.
suse92:~ # mkdir /tftpboot
suse92:~ # cp /usr/share/syslinux/pxelinux.0 /tftpboot/
suse92:~ # cp /usr/share/syslinux/pxelinux.0 /tftpboot/
Erstellen Sie jetzt das Unterverzeichnis /tftboot/pxelinux.cfg/.
suse92:~ # mkdir /tftboot/pxelinux.cfg
Erstellen Sie nun in diesem Verzeichnis die Datei default.
suse92:~ # mcedit /tftpboot/pxelinux.cfg/default
So könnte ihre default Datei aussehen in der Sie den Kernel und das Bootimage mit den gewünschten Optionen eintragen.
display /pxelinux.cfg/boot.msg
prompt 1
default dos
timeout 100
label dos
kernel /dosimage/memdisk
append initrd=/dosimage/dosimage.img
label suse92
kernel /suse92/linux
append initrd=/suse92/initrd vga=791
prompt 1
default dos
timeout 100
label dos
kernel /dosimage/memdisk
append initrd=/dosimage/dosimage.img
label suse92
kernel /suse92/linux
append initrd=/suse92/initrd vga=791
Jetzt fehlt noch die Datei boot.msg.
suse92:~ # mcedit /tftpboot/pxelinux.cfg/boot.msg
Diese Datei ist das PXE-Menü und kann wie folgt aussehen.
Welcome to PXE Boot!
- To boot DOS [default], type: dos <ENTER>
- To install SuSE Linux 9.2, type: suse92 <ENTER>
Timeout = 10s by Georg Kainzbauer
- To boot DOS [default], type: dos <ENTER>
- To install SuSE Linux 9.2, type: suse92 <ENTER>
Timeout = 10s by Georg Kainzbauer
Wenn Sie jetzt einen Client mit PXE booten, sollten Sie bereits das Bootmenü sehen. Sie müssen jetzt nur noch das eigentliche Bootimage für PXE hinterlegen.
Erstellen eines DOS-Bootimages
Bevor Sie ein DOS-Bootimage erstellen können, benötigen Sie eine bereits funktionierende DOS-Bootdiskette. Vergessen Sie nicht das Sie die Netzwerktreiber einbinden wenn Sie auf Netzwerkfreigaben zugreifen wollen.
Wenn Sie eine DOS-Bootdiskette erstellt haben, erstellen Sie das Unterverzeichnis /tftpboot/dosimage/ auf ihrem PXE-Server.
suse92:~ # mkdir /tftpboot/dosimage
Kopieren Sie jetzt die Datei /usr/share/syslinux/memdisk in dieses Verzeichnis.
suse92:~ # cp /usr/share/syslinux/memdisk /tftpboot/dosimage/
Legen Sie die Bootdiskette ein und erstellen Sie folgendermaßen ein Image ihrer Bootdiskette.
suse92:~ # dd if=/dev/fd0 of=/tftpboot/dosimage/dosimage.img
Sollte der folgende Absatz in der Datei /tftpboot/pxelinux.cfg/default noch fehlt, tragen Sie ihn bitte ein.
label dos
kernel /dosimage/memdisk
append initrd=/dosimage/dosimage.img
kernel /dosimage/memdisk
append initrd=/dosimage/dosimage.img
Damit das Bootimage auch im PXE-Menü angezeigt wird, muss folgende Zeile in der Datei /tftpboot/pxelinux.cfg/boot.msg stehen.
- To boot DOS [default], type: dos <ENTER>
Jetzt können Sie mit dem Kommando dos am Bootprompt ihr DOS-Image booten.
Erstellen eines SuSE Linux 9.2 Installations-Bootimages
Um SuSE Linux 9.2 vom Netzwerk zu installieren ist meist eine Diskette oder eine Boot-CD notwendig. Hier beschreibe ich wie Sie die Installation komplett vom Netzwerk durchführen können.
Erstellen Sie zuerst das Verzeichnis /tftpboot/suse92/.
suse92:~ # mkdir /tftpboot/suse92
Kopieren Sie die Dateien /boot/loader/initrd und /boot/loader/linux von der ersten Installations-CD oder der ersten DVD in dieses Verzeichnis.
suse92:~ # mount -t iso9660 /dev/hdc /mnt
suse92:~ # cp /mnt/boot/loader/initrd /tftpboot/suse92/
suse92:~ # cp /mnt/boot/loader/linux /tftpboot/suse92/
suse92:~ # cp /mnt/boot/loader/initrd /tftpboot/suse92/
suse92:~ # cp /mnt/boot/loader/linux /tftpboot/suse92/
Ergänzen Sie jetzt die Datei /tftpboot/pxelinux.cfg/default um folgenden Eintrag.
label suse92
kernel /suse92/linux
append initrd=/suse92/initrd vga=791
kernel /suse92/linux
append initrd=/suse92/initrd vga=791
Anschließend erweitern Sie das PXE-Menü um folgenden Eintrag.
- To install SuSE Linux 9.2, type: suse92 <ENTER>
Jetzt können Sie mit dem Kommando suse92 am Bootprompt ihr SuSE Linux 9.2 Installations-Image booten. Da wir aber noch keine Installationsquelle eingerichtet haben, sollten Sie jetzt alle SuSE Linux 9.2 CDs bzw. die erste DVD in ein Verzeichnis kopieren
und dieses per NFS, FTP oder HTTP freigeben. Zu beginn der Installation müssen Sie dann die erstellte Installationsquelle angeben. Sollten Sie NFS verwenden, können Sie den Installationspfad gleich als Option für das Bootimage mit angeben. Dazu ändern Sie die Datei default wie folgt ab.
label suse92
kernel /suse92/linux
append initrd=/suse92/initrd insmod=8139too insmod=e100 insmod=e1000 install=nfs://192.168.10.1:/nfs/suse92 vga=791
kernel /suse92/linux
append initrd=/suse92/initrd insmod=8139too insmod=e100 insmod=e1000 install=nfs://192.168.10.1:/nfs/suse92 vga=791
Jetzt sollte ihr PXE-Server einsatzbereit sein. Wenn es nicht auf Anhieb funktioniert, starten Sie den xinetd und den dhcpd nochmals neu.
suse92:~ # rcxinetd restart
suse92:~ # rcdhcpd restart
suse92:~ # rcdhcpd restart
Besteht noch weiterhin ein Problem, finden Sie hier eine Hilfestellung zu einigen Fehlerquellen:
http://www.openbrick.org/openbrick/Members/marcel/Howto/PureNetBoot
Dieser Eintrag wurde am 11.11.2004 erstellt und zuletzt am 03.11.2012 bearbeitet.
Direkter Link zu dieser Seite: http://www.gtkdb.de/index_35_1953.html
[ Zur Startseite ] [ Zur Kategorie ]
© 2004-2021 by Georg Kainzbauer