PXE-Auftrag
Aufgabenstellung
Vorbereitung der Geräte
- Ein Debian Linux-Server wird aufgesetzt, um als TFTP PXE Server zu fungieren. Dieser Server wird für das Netzwerkboot und die Bereitstellung von Betriebssystem-Images für Diskless-Stationen verantwortlich sein.
- Ein Client-PC (virtuelle Maschine) wird vorbereitet, um als Diskless-Station zu dienen, die über Netzwerk bootet und das Betriebssystem vom PXE-Server lädt.
Einrichtung und Konfiguration des TFTP PXE Servers
- Installation und Konfiguration des TFTP-Servers auf dem Debian System, der für das Hosting der Boot-Images und des PXE-Boot-Loaders verantwortlich ist.
- Einrichtung des PXE-Boot-Loaders (z.B. PXELINUX) und Bereitstellung der notwendigen Boot-Images sowie der Konfigurationsdateien, um den Netzwerkboot zu ermöglichen.
Testen und Überprüfung
- Durchführung eines Boot-Vorgangs auf dem Client-PC (Diskless-Station) über das Netzwerk, um zu überprüfen, ob das Betriebssystem erfolgreich vom TFTP PXE Server geladen und gestartet wird.
Theorie
Aufbau der Umgebung
Konfiguration des TFTP Servers
Ubuntu Server
TFTP SERVER in Betrieb nehmen
Installation des TFTP-Servers:
Der erste Schritt besteht darin, den TFTP-Server zu installieren. Dies wird erreicht durch den Befehl apt install tftpd-hpa, der den TFTP-Dienst auf Ihrem Ubuntu Server installiert. Dieser Schritt ist notwendig, um die Grundlage für den Dateitransfer über das Netzwerk zu schaffen.
apt install tftpd-hpa
systemctl enable tftpd-hpa
Erstellung des TFTP-Verzeichnisses:
Nach der Installation des TFTP-Servers ist es erforderlich, ein Verzeichnis für die TFTP-Dateiablage zu erstellen. Der Befehl mkdir /srv/tftp erstellt das Verzeichnis /srv/tftp, das als Speicherort für alle Dateien dient, die über TFTP übertragen werden sollen. Dieses Verzeichnis wird vom TFTP-Dienst verwendet, um Boot-Dateien und Konfigurationsdateien für Netzwerkgeräte bereitzustellen.
mkdir /srv/tftp
PXELinux in Betrieb nehmen
Installation von PXELinux und Syslinux:
Für Netzwerk-Boot-Dienste ist die Installation von PXELinux notwendig. Der Befehl apt install pxelinux syslinux-common
installiert PXELinux sowie die notwendigen Syslinux-Komponenten auf Ihrem Server. Diese Software ermöglicht es Netzwerkgeräten, über das Netzwerk zu booten, indem sie die erforderlichen Boot-Dateien bereitstellt.
apt install pxelinux syslinux-common
Kopieren der PXELinux Boot-Dateien:
Nach der Installation müssen die PXELinux Boot-Dateien in das TFTP-Verzeichnis kopiert werden. Dies wird durch die Befehle cp /usr/lib/PXELINUX/lpxelinux.0 /srv/tftp/.
und cp /usr/lib/syslinux/modules/bios/ldlinux.c32 /srv/tftp/.
erreicht. Diese Dateien sind notwendig, um den Boot-Prozess über das Netzwerk zu initiieren.
cp /usr/lib/PXELINUX/lpxelinux.0 /srv/tftp/.
cp /usr/lib/syslinux/modules/bios/ldlinux.c32 /srv/tftp/.
Erstellung des PXELinux Konfigurationsverzeichnisses:
Mit dem Befehl mkdir /srv/tftp/pxelinux.cfg wird ein Verzeichnis für die PXELinux-Konfigurationsdateien erstellt. In diesem Verzeichnis werden die Boot-Menü-Konfigurationen gespeichert.
mkdir /srv/tftp/pxelinux.cfg
Konfiguration des Boot-Menüs:
In der Konfigurationsdatei default
unter /srv/tftp/pxelinux.cfg
fügen Sie die notwendigen Einträge für das Booten des Slitaz Betriebssystems hinzu. Dies beinhaltet den Namen der Boot-Option, das zu startende Menü-Label, den Pfad zum Kernel und die Kernel-Optionen, einschließlich der Spezifikation der Initrd-Dateien und Boot-Parameter.
nano /srv/tftp/pxelinux.cfg/default
default slitaz
prompt 0
label slitaz
menu label Slitaz
kernel slitaz/bzImage
append initrd=slitaz/rootfs4.gz,slitaz/rootfs3.gz,slitaz/rootfs2.gz,slitaz/rootfs1.gz rw root=/dev/null vga=normal autologin
Slitaz-Dateien bereitstellen
Kopieren der Slitaz-Dateien:
Die letzten Schritte umfassen das Kopieren der Slitaz-Betriebssystemdateien in das TFTP-Serververzeichnis. Dazu gehören der Kernel (bzImage
) und die Initrd-Dateien (rootfs*.gz
). Diese Dateien müssen in den entsprechenden Unterverzeichnissen innerhalb des /srv/tftp
Verzeichnisses platziert werden, damit sie während des Boot-Prozesses über das Netzwerk zugänglich sind.
cd ~
wget http://mirror.slitaz.org/iso/4.0/slitaz-4.0.iso
mount -o loop slitaz-4.0.iso /mnt
mkdir /srv/tftp/slitaz
cp /mnt/boot/bzImage /mnt/boot/rootfs* /srv/tftp/slitaz/.
umount /mnt
Konfiguration des DHCP Servers
Voraussetzung des folgenden ist das man den DHCP Auftrag bereits erledigt hat: DHCP-Auftrag
Wenn man einen funktionierenden DHCP hat kann man die folgende host Konfiguration hinzufügen (Wichtig ist es die richtige MAC-Adresse zu verwenden)
nano /etc/dhcp/dhcpd.conf
host vogelsrv42012 {
hardware ethernet 00:50:56:9e:27:5e;
fixed-address 192.168.1.8;
next-server 192.168.1.3;
filename "lpxelinux.0";
}
sudo systemctl restart isc-dhcp-server
Testen des PXE Boots
Durchführung eines Boot-Tests über das Netzwerk, um die Konfiguration und Funktionsfähigkeit des gesamten Setups zu überprüfen.