Table of Contents

PXE

Preboot eXecution Environment (oder PXE, englisch ausgesprochen “pixie”) steht für das Laden eines Systems über eine Netzwerk-Verbindung. Dies ist vergleichbar dem Laden von einem Direktstart-Datenträger in einem fernen optischen Laufwerk.

Für das Laden über das Netzwerk wird benötigt:


PXE-Server Einrichtung

Ein PXE-Server besteht aus:

Schnelleinstieg mit Direktstart-Datenträger

Der SliTaz-Direktstart-Datenträger kann als ein PXE-Server eingesetzt werden. Dazu wird nach dem Systemladen über das Menü Systemwerkzeuge die Netbox-Anwendung gestartet.

Seit SliTaz 3.0 ist die Netbox-Anwendung aufgeteilt in Netbox and Serverbox. Wenn Sie eine aktuelle SliTaz-Version einsetzen, lesen Sie im folgenden bitte Serverbox-Anwendung statt Server-Reiter

Anpassung Ihres PXE-Servers

/dev/hda1    /home   ext3    defaults   0  0
mount -t nfs -o ro bootserver:/slitaz  /media/slitaz
tazpkg link libre-office /media/slitaz
label slitaz
  kernel /boot/bzImage
  append initrd=/boot/rootfs.gz,/boot/configs/extra-packages.gz,/boot/configs/special-configuration.gz rw root=/dev/null vga=normal autologin


Testen des PXE-Servers mit QEMU


Einrichten des PXE-Klienten

Die meisten neueren Rechner mit Ethernet-Anschluss haben ein PXE-fähiges BIOS oder UEFI. Suchen Sie die PXE-Funktion in den BIOS-Menüs und im BIOS-Urlade-Menü und aktivieren Sie sie. Möglicherweise müssen Sie dazu während des Urlade-Prozesses eine Taste drücken, z.B. F12.

Wenn Ihr Rechner Urladen mit PXE nicht unterstützt, können Sie stattdessen SliTaz als Klienten verwenden. Erzeugen Sie einen urladefähigen optischen Datenträger oder eine Diskette über das Menü Systemwerkzeuge Unterpunkt Boot Floppy/CDROM.

In dem Reiter PXE-Netzwerk klicken Sie Write floppy. Verwenden Sie diesen Datenträger zum Laden des Klienten-Rechners.

Wenn Ihre Ethernet-Schnittstelle nicht erkannt wird, schauen Sie bei ROM-O-Matic


Urladen über das Netzwerk

Der SliTaz-Direktstart-Datenträger enthält Konfigurationseinstellungen zum Urladen über das Internet. Damit ist es möglich, von einem älteren Speichermedium eine neuere SliTaz-Version zu laden.

Dies geht automatisch, wenn Sie in dem Startbildschirm des SliTaz-Direktstart-Datenträgers eingeben:

  web

Das ist alles!

Mehr Informationen über das Laden von SliTaz über das Internet finden Sie bei SliTaz „Web Boot“.

Um eine IP-Adresse, eine Netzmaske und die Adresse eines Netzkopplers („gateway“) zu erhalten, wird wie bei einer normalen Netzwerk-Verbindung, ein DHCP-Server benötigt; dies sollte Ihr Standard-Vermittlungsknoten („router“) leisten.


Urladen mit PXE ohne DHCP-Server: Urladen über das Netzwerk per Anweisungen

Wenn kein Gerät vorhanden ist, das als DHCP-Server dienen kann, ist eine IP-Adresse mitsamt Netzmaske, die Adresse eines Netzkopplers und optional eine DNS-Adresse anzugeben:

title Slitaz Web
  kernel /boot/gpxe ip=192.168.0.12/24 gw=192.168.0.1 dns=192.168.0.1 url=http://mirror.slitaz.org/pxe/pxelinux.0

Der URL kann auch folgendermaßen angegeben werden:

title Slitaz Web
  kernel /boot/gpxe ip=192.168.0.12/24 gw=192.168.0.1 dns=192.168.0.1 ip=192.168.0.12/24 gw=192.168.0.1
  dns=192.168.0.1 url=http://mirror.slitaz.org/pxe/pxelinux.0

Nur die folgenden Schlüsselwörter werden erkannt:


Erweiterte Konfiguration zum Urladen über das Netzwerk

Das Verfahren zum Urladen über das Netzwerk kann in Vermittlungsknoten („router“) und andere Geräte integriert werden und individuell angepasst werden.


Eingebettetes Urladen über Netzwerk mit PXE vom PROM (PXE-Weiterleitung)

Richten Sie einen PXE-Server ein mit der Urladedatei http://download.tuxfamily.org/slitaz/boot/gpxe.pxe, einem 42 KiB großen Urlader zweiter Stufe. Dies wurde erfolgreich auf einem OpenWRT-Vermittlungsknoten getestet:

      # echo "dhcp-boot=gpxe.pxe" >> /tmp/dnsmasq.conf
  # /jffs/usr/sbin/tftpd 192.168.0.1 /jffs/boot

Die Installation des tftp-Servers ist nicht erforderlich, wenn Sie direkt den SliTaz-tftp-Server verwenden:

      # echo "dhcp-boot=gpxe.pxe,mirror.slitaz.org" >> /tmp/dnsmasq.conf


Änderung des Standard-URL für GPXE-Urladen

Der URL steht in der Datei gpxe ab Byte 519 in einer Länge von maximal 255 Byte.

    $ dd bs=1 skip=519 count=255 if=gpxe 2> /dev/null | strings
    $ echo -n "http://myurl.org/myboot" | cat - /dev/zero | dd conv=notrunc bs=1 seek=519 count=255 of=gpxe
  $ echo -n "ip=192.168.0.10/24 gw=192.168.0.1 dns=192.168.0.1 url=http://myurl.org/myboot" | cat - /dev/zero | dd
  conv=notrunc bs=1 seek=519 count=255 of=gpxe
  $ dd if=/dev/zero conv=notrunc bs=1 seek=519 count=255 of=gpxe


Änderung des Standard-URL in der Datei gpxe.pxe

Der URL steht in der Datei gpxe.pxe ab Byte 5 in einer Länge von maximal 255 Byte.

Anzeige des URL in der Datei gpxe.pxe mit:

  $ dd bs=1 skip=5 count=255 if=gpxe.pxe 2> /dev/null | strings

Ändern des URL mit:

  $ echo -n "http://myurl.org/myboot" | cat - /dev/zero | dd conv=notrunc bs=1 seek=5 count=255 of=gpxe.pxe

Entfernen des URL, um normales gpxe.pxe-Verhalten zu erreichen:

  $ dd if=/dev/zero conv=notrunc bs=1 seek=5 count=255 of=gpxe.pxe


Redundante Server für das Urladen über das Netzwerk nutzen

Es kann eine, durch Kommata getrennte Liste von URLs angegeben werden.

Der PXE-Klient versucht zunächst, vom ersten URL zu laden. Wenn das Urladen scheitert, wird der nächste URL versucht, und so weiter.

Hier ein Beispiel mit den aktuellen Servern zum Urladen von Slitaz über das Netzwerk:

  $ echo -n "http://mirror.slitaz.org/pxe/pxelinux.0,http://mirror.switch.ch/ftp/mirror/pxe/pxelinux.0,http:
  download.tuxfamily.org/slitaz/pxe/pxelinux.0" | cat - /dev/zero | dd conv=notrunc bs=1 seek=519 count=255 of=gpxe

Warum PXE verwenden? Das VNC-Beispiel

Nehmen wir an, Ihre Firma verarbeitet einige äußerst schutzwürdige Daten. Es soll verhindert werden, dass jemand irgendetwas davon auf Wechseldatenträger kopiert. Nur wenige Benutzer sollen Zugriff auf diese Daten haben.

Zur Erhöhung der Sicherheit

VNC wartet auf Verbindungsaufbau aus dem Netzwerk ohne ein Kennwort (fbvnc unterstützt keine Authentifizierung) und der VNC-Verkehr über das Netzwerk wird nicht verschlüsselt.

Eine schnelle Demonstration

Über das Menü Tiny SliTazTiny VNC von SliTaz „Web Boot“ wird der VNC-Klient ohne SSH gestartet (es wird ein VNC-Server in Ihrem Netzwerk benötigt…).

Sie können den Linux-Kern und das initramfs direkt transferieren und in Ihrem Netzwerk testen oder mit qemu

Um den bestem VESA-Modus (z.B. vga=0x33B) zu finden, geben Sie als Argument zunächst vga=ask an



Qualitätsbericht
Qualität gut
Überprüfung Kleinere Aktualisierungen
Priorität mittel
Problemeungültige Verweise: http://rom-o-matic.net/ http://mirror.slitaz.org/boot/mips/tftpd
Verbesserungsvorschläge Lesbarkeit verbessern