SuSE Linux: SLES8 i386
Technische Hintergrundinformationen sowie die vollständige Spezifikation von PXE finden Sie hier: ftp://download.intel.com/labs/manage/wfm/download/pxespec.pdf
Voraussetzungen dafür sind:
Diese drei Serverdienste können auf unterschiedlichen Rechnern konfiguriert werden. In dem hier beschriebenen Artikel werden diese jedoch auf einem Rechner zusammengefaßt. Ferner bezieht sich dieser Artikel nur auf die Bereitstellung des Installationsrepositorys über NFS - auf die Konfiguration eines ftp-Servers als Installationsquelle wird an dieser Stelle verzichtet. Es wird darüberhinaus nur auf die zusätzlich zu einer bestehenden DHCP-Server Konfiguration notwendigen Konfigurationsoptionen eingegangen. Alle hier beschriebenen Konfigurationen des "Installationsservers" beziehen sich auf eine Standardinstallation des SuSE Linux Enterprise Server 8, können jedoch auch mit SuSE Linux ab der Version 8.1 (und gegebenenfalls notwendigen Anpassungen) vollzogen werden.
/etc/dhcpd.conf und fügen die folgenden Zeilen am Ende an:
group {
# PXE related stuff ...
#
# "next-server" defines the tftp server which will serve the pxelinux image to the PXE clients.
next-server 192.168.100.1;
#
# "filename" specifies the pxelinux image on the tftp server which will be served to the PXE clients.
# The configured tftp server on 192.168.100.1 runs in a "change-root jail" to /srv/tftpboot
filename "pxelinux.0";
host Zert120 { hardware ethernet 00:10:dc:95:d7:b7; }
}
next-server (hier 192.168.100.1) spezifiziert die IP-Adresse des tftp Servers, der sowohl den Bootloader pxelinux, als auch das zu bootende Bootimage und die initrd für die PXE-Clients bereitstellt.filename gibt das zu bootende pxelinux Bootloader Image an, welches für die PXE-Clients bereitgestellt wird.host spezifiziert den Hostnamen, sowie die Hardwareadresse der Netzwerkkarte eines PXE-Clients, für den die vorherigen beiden Optionen gültig sein sollen. An dieser Stelle müssen Sie die jeweilige Hardwareadresse (hier 00:10:dc:95:d7:b7) sowie den gewünschten Hostnamen des Clients (hier Zert120) eintragen. Die Angabe mehrerer hosts Zeilen ermöglicht an dieser Stelle das Booten von mehreren Clients von dem tftp Server.rcdhcpd restart neu.
Eine ausführliche Erklärung der beschriebenen Optionen erhalten Sie in der Manual Page von dhcpd.conf die Sie mit man 5 dhcpd.conf aufrufen können.
/usr/local/dist/SuSE82)perl -pi -e 's/InstPath:\t0[2|3|4|5|6|7]/InstPath:\t01/' common.pkd
/usr/local/dist/SLES8 192.168.100.0/255.255.255.0(ro,no_root_squash,sync)in der Datei
/etc/exports exportiert nach einem Neustart des NFS-Servers durch rcnfsserver restart abschließend das Installationsrepository (hier das Verzeichnis: /usr/local/dist/SLES8) für das Netzwerk 192.168.100.0. Dieser Eintrag muß abhängig von Ihrer Netzwerkkonfiguration und dem Verzeichnis Ihres Installationsrepositorys geändert werden.
Eine ausführliche Erklärung der für den nfs Server möglichen Optionen erhalten Sie in der Manual Page von exports die Sie mit man 5 exports aufrufen können.
/srv/tftpboot und /srv/tftpboot/pxelinux.cfgcp -a boot/loader/linux boot/loader/initrd boot/loader/message boot/loader/memtest /srv/tftpbootdie Dateien
linux initrd message memtest in das Verzeichnis /srv/tftpboot.syslinux.
rpm -Uhv syslinux-1.62-375.i586.rpm
/usr/share/syslinux/pxelinux.0 durch die Eingabe von:
cp -a /usr/share/syslinux/pxelinux.0 /srv/tftpbootin das Verzeichnis
/srv/tftpboot.cp -a boot/loader/isolinux.cfg /srv/tftpboot/pxelinux.cfg/defaultdie Datei
isolinux.cfg nach /srv/tftpboot/pxelinux.cfg/default/srv/tftpboot/pxelinux.cfg/default und entfernen Sie die Zeilen die mit:
gfxbootreadinfoframebufferappend Zeilen der Label default failsafe und apic die folgenden Einträge an:
insmod=e100 Dieser Eintrag bewirkt, daß auf dem PXE-Client das Kernelmodul für eine Intel 100MBit/s Netzwerkkarte geladen wird. Dieser Eintrag ist abhängig von der Hardware Ihres Clients, und muß entsprechend geändert werden. Bei einer Broadcom GigaBit Netzwerkkarte würde dieser Eintrag insmod=bcm5700 lauten.netdevice=eth0 Dieser Eintrag spezifiziert das Netzwerkinterface des Clients, welches für die Netzwerkinstallation benutzt werden soll, und ist nur dann notwendig, wenn mehrere Netzwerkkarten in den Clients verbaut sind. Dieser Eintrag muß dann entsprechend angepaßt werden. Bei nur einer Netzwerkkarte kann dieser Eintrag komplett entfallen.install=nfs://192.168.100.1/usr/local/dist/SLES8 Dieser Eintrag legt den nfs Server und die Installationsquelle für die Installation der Clients fest, und muß gegebenenfalls angepaßt werden./srv/tftpboot/pxelinux.cfg/default finden Sie hier:
default linux # default label linux kernel linux append initrd=initrd ramdisk_size=65536 insmod=e100 install=nfs://192.168.100.1/usr/local/dist/SLES8 # failsafe label failsafe kernel linux append initrd=initrd ramdisk_size=65536 ide=nodma apm=off acpi=off insmod=e100 install=nfs://192.168.100.1/usr/local/dist/SLES8 # apic label apic kernel linux append initrd=initrd ramdisk_size=65536 apic insmod=e100 install=nfs://192.168.100.1/usr/local/dist/SLES8 # manual label manual kernel linux append initrd=initrd ramdisk_size=65536 manual=1 # rescue label rescue kernel linux append initrd=initrd ramdisk_size=65536 rescue=1 # memory test label memtest kernel memtest # hard disk label harddisk kernel linux append SLX=0x202 implicit 0 display message prompt 1 timeout 100
/etc/inetd.conf und entfernen Sie das # in der Zeile:
# tftp dgram udp wait root /usr/sbin/in.tftpd in.tftpd -s /tftpboot
tftp dgram udp wait root /usr/sbin/in.tftpd in.tftpd -s /srv/tftpboot -r blksizeund starten Sie den inetd durch die Eingabe von
rcinetd restart neu.pxelinux.0) an, der auf dem Client zur Ausführung kommt. Dieser wertet die IP Adresse des Clients aus, und wandelt diese in HEX um. Nun wird auf dem Server (im Verzeichnis /srv/tftpboot/pxelinux.cfg) eine Konfigurationsdatei gesucht, die genauso heißt wie der eben ermittelte HEX Wert. Wird diese nicht gefunden wird von diesem Wert eine Stelle abgezogen und erneut gesucht. Wird keine passende Konfigurationsdatei gefunden, so wird am Ende die Konfigurationsdatei default gesucht und entsprechend ausgewertet. In dem oben gezeigten Beispiel wird für alle PXE-Clients das Installationsmenu des SuSE Linux Enterprise Servers 8 im Textmodus angezeigt. Durch diesen Mechanismus ist es möglich für verschiedene Clients unterschiedliche Bootkonfigurationen zu erstellen. Informationen dazu finden Sie in dem Paket syslinux unter /usr/share/doc/packages/syslinux/pxelinux.doc und /usr/share/doc/packages/syslinux/syslinux.doc. Die nach Auswahl eines Menüeintrages startende Installation kann wie im Handbuch beschrieben durchgeführt werden.
NFS Quelle für SLES 8 Installation