3. Integration der Betriebsysteme und Wartungstools in den MosNis

Bild des Benutzers TomcatMJ

Ab diesem Abschnitt wird die Einbindung der Betriebssysteme und Wartungstools sowie weiterer Optionen in den MosNisi behandelt.

1. 1. Vorbereiten der Installationsmenüstruktur

Da wir ja den Installationsserver für mehrere Betriebssysteme anlegen wollen, ist es aus Gründen der Übersichtlichkeit sinnvoll eine Menüstruktur mit Untermenüs zu erstellen. Über diese kann dann später ausgewählt werden, welches System installiert werden soll. Man kann jedoch auch einfach Default Werte im Menü integrieren, die nach Ablauf einer festlegbaren Zeit automatisch gestartet werden, so wie es in den normalen Bootmenüs von LILO und GRUB auf der Festpatte oder SYSLINUXi für CDs, DVDs, Festplatten und USB-Medien oder ISOLINUX für CDs bzw. DVDs üblich ist. Zuerst legen wir die Datei /tftpboot/pxelinux.cfg/default an, die von pxelinux.0 immer genutzt wird sofern keine Datei pxelinux mit der MAC-Adresse des anfragenden PXE-Clients als Endung bzw. der um x Stellen gekürzten MAC-Adresse im Verzeichnis /tftpboot/pxelinux.cfg existiert.

2. 2. Das Defaultmenü

/tftpboot/pxelinux.cfg/default :

DEFAULT vesamenu.c32
MENU BACKGROUND vesamain.png
PROMPT 0
MENU TITLE Installationsserver


# VESA
LABEL VESA
  MENU LABEL MosNis VESA-Menusystem Auswahl
  KERNEL vesamenu.c32
  APPEND MosNis/VMAIN.conf

# SIMPLE
LABEL SIMPLE
  MENU LABEL MosNis SIMPLE-Menusystem Auswahl
  KERNEL menu.c32
  APPEND MosNis/MAIN.conf

# LTSP
LABEL LTSP
  MENU LABEL KIWI-LTSP Auswahl
  KERNEL menu.c32
  APPEND kiwi.conf

# PXEGRUB
LABEL PXEGRUB
  MENU LABEL PXEGrUB laden
  PXE pxegrub.0
  
# Harddiskboot
LABEL localboot
  MENU LABEL Lokales System booten
  LOCALBOOT (0)

#Deutsche Tastaturbelegung
KBDMAP german.kbd
#Menüeinstellungen
MENU WIDTH 80
MENU MARGIN 10
MENU ROWS 12
MENU TABMSGROW 18
MENU CMDLINEROW 12
MENU ENDROW 24
MENU TIMEOUTROW 20
ONTIMEOUT SIMPLE
TIMEOUT 200

#Hilfstexte
F1 MosNis/Hilfe.txt
F2 MosNis/VESA.txt
F3 MosNis/Simple.txt
F4 MosNis/LTSP.txt

Da nicht alle Rechner mit VESA-Grafik problemlos im Bootvorgang zurecht kommen, gibt es natürlich auch eine rein textbasierte Menüversion die oben im VESA-Bootmenü bereits genannt ist unter dem Label SIMPLE namens MAIN.conf. Diese Konfiguration wird nach Ablauf der per TIMEOUT festgelegten Zeit durch den ONTIMEOUT Parameter automatisch geladen, damit auch im Falle eines nicht vorhandenen VESA-Supports ein Bootmenü erscheitn und dort die entsprechenden Punkte dann auswählbar sind.

3. 3. Das Textonly-Hauptmenüi

/tftpboot/MosNis/MAIN.conf :

DEFAULT menu.c32
PROMPT 0
MENU TITLE Installationsserver

# VESA-Mode
LABEL VESA
 MENU LABEL MosNis VESA-Menusystem
 KERNEL vesamenu.c32
 APPEND MosNis/VMAIN.conf
 
# Linux
LABEL Linux
  MENU LABEL Linux Auswahl
  KERNEL menu.c32
  APPEND MosNis/LINUX.conf
  
# Windows
LABEL Windows
  MENU LABEL Windows Auswahl
  KERNEL menu.c32
  APPEND MosNis/Windows.conf

# Tools
LABEL Tools
  MENU LABEL Wartungstools Auswahl
  KERNEL menu.c32
  APPEND MosNis/TOOLS.conf

# LTSP
LABEL LTSP
  MENU LABEL LTSP Auswahl
  KERNEL vesamenu.c32
  APPEND pxelinux.cfg/kiwi.conf

# PXEGrUB
LABEL PXEGRUB
  MENU LABEL PXEGrUB nachladen
  PXE pxegrub.0
  
# Harddiskboot
LABEL localboot
  MENU LABEL Lokales System booten
  LOCALBOOT (0)

#Deutsche Tastaturbelegung
KBDMAP german.kbd
#Menüeinstellungen
MENU WIDTH 80
MENU MARGIN 10
MENU ROWS 12
MENU TABMSGROW 18
MENU CMDLINEROW 12
MENU ENDROW 24
MENU TIMEOUTROW 20
ONTIMEOUT localboot
TIMEOUT 200

#Hilfstexte
F1 MosNis/Hilfe.txt
F2 MosNis/VESA.txt
F3 MosNis/Simple.txt
F4 MosNis/LTSP.txt
F5 MosNis/LINUX.txt
F6 MosNis/WINDOWS.txt
F7 MosNis/PXEGrUB.txt

Die Datei default liegt im Hauptverzeichnis des TFTP-Servers da pxelinux.0 nur beim Start seine Konfiguration in /tftboot/pxelinux.cfg sucht und danach alle Menüs dort geladen werden,wo sich pxelinux.0 befindet, hier also im Hauptverzeichnis des TFTP-Servers. Der Menüpunkt „localboot“, auf den nach Timeout aus dem rein textbasierten Menü zurückgegriffen wird, dient dazu, wie der Name bereits vermuten lässt, das bereits lokal auf dem Client installierte Betriebssystem bzw. den dortigen Bootmanager zu starten, und zwar in der vom BIOS vorgegebenen Bootgerätereihenfolge. Dies kann natürlich in einer Endlosschleife enden wenn dort PXE-Boot als Default steht, weswegen ebenso eine konkrete Laufwerkskennung in Hexadezimalkodierung angegeben werden kann. „localboot (0x80)“ sorgt beispielsweise dafür, daß die erste IDE-Festplatte zum booten genommen wird. Die Anweisung „localboot (1)“ hingegen sorgt dafür, daß das zweite Gerät der im BIOS festgeegten Bootreihenfolge für den dann folgenden Fortgang genutzt wird. Weitere Parameter für Localboot können der Dokumentation von SYSLINUX/ISOLINUX/PXELINUXi im Verzeichnis /usr/share/doc/packages/syslinux bzw. der SYSLINUX-Homepage entnommen werden.

Die F1 bis F0 Direktiven teilen PXELINUX mit, welche Datei bei drücken der Tasten F1 bis F10 jeweils angezeigt werden soll. Aus technischen Gründen ist eine direkte Adressierung der Tasten F11 und F12 leider nicht möglich genausowenig wie Umlaute. Die Dateien dienen dazu Erläuterungen anzuzeigen und nicht zur weiteren Menüsteuerung. Mit der „MENU LABEL“ Direktive wird festgelegt wie der Menüpunkt in der Menümaske genauer bezeichnet wird der über das dort ebenso anzeigte „LABEL“ erreichbar ist. Da zu der Datei /tftpboot/pxelinux.cfg/default jedoch nicht von den anderen, später anzulegenden Untermenüs hin zurückgesprungen werden kann, legen wir direkt auch die Datei /tftpboot/MosNis/VMAIN.conf an indem wir die Datei /tftboot/pxelinux.cfg/default schlichtweg nach /tftboot/MosNis/VMAIN.conf kopieren und um die Abschnitte für die Systemauswahl und die Wartungstoolauswahl erweitern.

4. 4. Das VESA-Hauptmenü

/tftpboot/MosNis/VMAIN.conf : DEFAULT vesamenu.c32 PROMPT 0 MENU TITLE MultiOperatingSystem NetzwerkInstallationsServer MENU BACKGROUND vesamain.png # SIMPLE Menu LABEL SIMPLE MENU LABEL MosNis SIMPLE Menusystem KERNEL menu.c32 APPEND MosNis/MAIN.conf # Linux LABEL Linux MENU LABEL Linux Auswahl KERNEL vesamenu.c32 APPEND MosNis/VLINUX.conf # Windows LABEL Windows MENU LABEL Windows KERNEL vesamenu.c32 APPEND MosNis/VWindows.conf # Tools LABEL Tools MENU LABEL Wartungstools Auswahl KERNEL vesamenu.c32 APPEND MosNis/VTOOLS.conf # LTSP LABEL LTSP MENU LABEL LTSP Auswahl KERNEL vesamenu.c32 APPEND pxelinux.cfg/kiwi.conf # PXEGrUB LABEL PXEGRUB MENU LABEL PXEGrUB nachladen PXE boot/grub/pxegrub.0 # Harddiskboot LABEL localboot MENU LABEL Lokales System booten LOCALBOOT (0) #Deutsche Tastaturbelegung KBDMAP german.kbd #Menüeinstellungen MENU WIDTH 80 MENU MARGIN 10 MENU ROWS 12 MENU TABMSGROW 18 MENU CMDLINEROW 12 MENU ENDROW 24 MENU TIMEOUTROW 20 ONTIMEOUT SIMPLE TIMEOUT 200 #Hilfstexte F1 MosNis/Hilfe.txt F2 MosNis/VESA.txt F3 MosNis/Simple.txt F4 MosNis/LTSP.txt F5 MosNis/LINUX.txt F6 MosNis/WINDOWS.txt F7 MosNis/PXEGrUB.txt

Die Datei für den Menühintergrund (oben vesamain.png) kann entweder im PNG-Dateiformat oder im JPEG-Format vorliegen und sollte eine Größe von 640x480 Punkten haben. Die textbasierte Menüversion unter /tftpboot/MosNis/MAIN.conf kann im übrigen über die Parameter SERIAL und CONSOLE wie im Bootmanager-Wikibook im Abschnitt über Installationsbootloader bzw. der Syslinux-Homepage beschrieben auch über eine vorhandene serielle Schnittstelle umgeleitet werden. Dies macht für grafikkartenlose Systeme die aber ihre Bootausgaben über die Serielle Schnittstelle leiten können durchaus Sinn, vor allem da zu diesem Zeitpunkt noch nicht mit VNC gearbeitet werden kann da noch kein Framebufferdevice beim laden des Bootmanagers aktiviert werden kann, sondern dies erst später im jeweiligen Installationsprogramm des entsprechend zu installierenden Betriebssystems eventuell möglich ist. Nicht jedes System hat allerdings auch eine VNC-Installationsoption

Die weiteren Untermenüs werden im jeweiligen folgenden Abschnitt erläutert.

0
Eigene Bewertung: Keine