Für die Installation von SUSE Linux Enterprise Desktop stehen zahlreiche Verfahren zur Auswahl. Abgesehen von der normalen Medieninstallation, die in Kapitel 2, Installation mit YaST beschrieben wird, können Sie aus mehreren netzwerkbasierten Ansätzen auswählen oder eine vollautomatische Installation von SUSE Linux Enterprise Desktop ausführen.
Die einzelnen Methoden werden über zwei kurze Checklisten eingeführt: In einer werden die Voraussetzungen für diese Methoden aufgeführt, in der anderen die grundlegenden Verfahren dargestellt. Anschließend werden alle in diesen Installationsszenarien verwendeten Techniken ausführlicher erläutert.
In den folgenden Abschnitten wird das System, auf dem Ihre neue SUSE Linux Enterprise Desktop-Installation ausgeführt wird, als Zielsystem oder Installationsziel bezeichnet. Der Begriff Repository (früher „Installationsquelle“ genannt) wird für alle Quellen der Installationsdaten verwendet. Dazu gehören physische Medien, z. B. CD und DVD, sowie Netzwerkserver, die die Installationsdaten im Netzwerk verteilen.
In diesem Abschnitt werden die für komplexe Boot-Szenarien erforderlichen Konfigurationsschritte beschrieben. Er enthält zudem Konfigurationsbeispiele für DHCP, PXE-Boot, TFTP und Wake-on-LAN.
Es gibt zwei Möglichkeiten zum Einrichten eines DHCP-Servers. Für SUSE Linux Enterprise Desktop bietet YaST eine grafische Schnittstelle für den Prozess. Benutzer können die Konfigurationsdateien auch manuell bearbeiten.
Fügen Sie Ihrer DHCP-Serverkonfiguration zwei Deklarationen hinzu, um den Netzwerk-Clients den Standort des TFTP-Servers mitzuteilen und die Boot-Image-Datei für das Installationsziel anzugeben.
Melden Sie sich als root auf dem Computer an, der den DHCP-Server bereitstellt.
Starten Sie › › .
Schließen Sie den Installationsassistenten für die Einrichtung des grundlegenden DHCP-Server ab.
Wenn Sie eine Warnmeldung zum Verlassen des Start-Dialogfelds erhalten, wählen Sie und .
Im Dialogfeld wählen Sie das Subnetz aus, indem sich das neue System befinden soll und klicken Sie auf .
Im Dialogfeld wählen Sie , um eine neue Option zur Subnetz-Konfiguration hinzuzufügen.
Wählen Sie Dateiname und geben Sie pxelinux.0 als Wert ein.
Fügen Sie eine andere Option (next-server) hinzu und setzen Sie deren Wert auf die Adresse des TFTP-Servers.
Wählen Sie und , um die DHCP-Serverkonfiguration abzuschließen.
Wenn Sie DHCP zum Angeben einer statischen IP-Adresse für einen bestimmten Host konfigurieren möchten, fügen Sie unter im DHCP-Serverkonfigurationsmodul (Schritt 4) eine neue Deklaration für den Hosttyp hinzu. Fügen Sie dieser Hostdeklaration die Optionen hardware und fixed-address hinzu und bieten Sie die entsprechenden Werte an.
Die einzige Aufgabe des DHCP-Servers ist neben der Bereitstellung der automatischen Adresszuweisung für die Netzwerk-Clients die Bekanntgabe der IP-Adresse des TFTP-Servers und der Datei, die von den Installationsroutinen auf dem Zielcomputer abgerufen werden muss.
Melden Sie sich als root auf dem Computer an, der den DHCP-Server bereitstellt.
Fügen Sie einer Subnetzkonfiguration in der Konfigurationsdatei des DHCP-Servers, die sich unter /etc/dhcpd.conf befindet, folgende Zeilen hinzu:
subnet 192.168.1.0 netmask 255.255.255.0 {
range dynamic-bootp 192.168.1.200 192.168.1.228;
# PXE related settings
#
# "next-server" defines the TFTP server that will be used
next-server ip_tftp_server;
#
# "filename" specifies the pxelinux image on the TFTP server
# the server runs in chroot under /srv/tftpboot
filename "pxelinux.0";
}
Ersetzen Sie ip_tftp_server durch die IP-Adresse des TFTP-Servers. Weitere Informationen zu den in dhcpd.conf verfügbaren Optionen finden Sie auf der man-Seite dhcpd.conf.
Starten Sie den DHCP-Server mit systemctl restart dhcpd neu.
Wenn Sie SSH für die Fernsteuerung einer PXE- und Wake-on-LAN-Installation verwenden möchten, müssen Sie die IP-Adresse, die der DHCP-Server dem Installationsziel zur Verfügung stellen soll, explizit angeben. Ändern Sie hierzu die oben erwähnte DHCP-Konfiguration gemäß dem folgenden Beispiel:
group {
# PXE related settings
#
# "next-server" defines the TFTP server that will be used
next-server ip_tftp_server:
#
# "filename" specifies the pxelinux image on the TFTP server
# the server runs in chroot under /srv/tftpboot
filename "pxelinux.0";
host test {
hardware ethernet mac_address;
fixed-address some_ip_address;
}
}Die Host-Anweisung gibt den Hostnamen des Installationsziels an. Um den Hostnamen und die IP-Adresse an einen bestimmten Host zu binden, müssen Sie die Hardware-Adresse (MAC) des Systems kennen und angeben. Ersetzen Sie alle in diesem Beispiel verwendeten Variablen durch die in Ihrer Umgebung verwendeten Werte.
Nach dem Neustart weist der DHCP-Server dem angegebenen Host eine statische IP-Adresse zu, damit Sie über SSH eine Verbindung zum System herstellen können.
Während einer SUSE-basierten Installation können Sie zur Einrichtung eines TFTP-Servers YaST verwenden. Alternativ können Sie diesen Server aber auch manuell einrichten. Der TFTP-Server übergibt das Boot-Image an das Zielsystem, sobald dieses gebootet ist und eine entsprechende Anforderung sendet.
Melden Sie sich als root-Benutzer an.
Starten Sie › › und installieren Sie das erforderliche Paket.
Klicken Sie auf , um sicherzustellen, dass der Server gestartet und in die Boot-Routine aufgenommen wird. Ihrerseits sind hierbei keine weiteren Aktionen erforderlich. tftpd wird zur Boot-Zeit von xinetd gestartet.
Klicken Sie auf , um den entsprechenden Port in der Firewall zu öffnen, die auf dem Computer aktiv ist. Diese Option ist nur verfügbar, wenn auf dem Server eine Firewall installiert ist.
Klicken Sie auf , um nach dem Verzeichnis mit dem Boot-Image zu suchen. Das Standardverzeichnis /tftpboot wird erstellt und automatisch ausgewählt.
Klicken Sie auf , um die Einstellungen zu übernehmen und den Server zu starten.
Melden Sie sich als root an und installieren Sie die Pakete tftp und xinetd.
Erstellen Sie die Verzeichnisse /srv/tftpboot und /srv/tftpboot/pxelinux.cfg, sofern sie noch nicht vorhanden sind.
Fügen Sie wie in Abschnitt 4.3, „Verwenden von PXE Boot“ beschrieben die für das Boot-Image erforderlichen Dateien hinzu.
Ändern Sie die Konfiguration von xinetd, die sich unter /etc/xinetd.d/ befindet, um sicherzustellen, dass der TFTP-Server beim Booten gestartet wird:
Erstellen Sie, sofern noch nicht vorhanden, in diesem Verzeichnis eine Datei namens tftp, indem Sie touch tftp eingeben. Führen Sie anschließend folgenden Befehl aus: chmod 755 tftp.
Öffnen Sie die Datei tftp und fügen Sie die folgenden Zeilen hinzu:
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /srv/tftpboot
disable = no
}
Speichern Sie die Datei und starten Sie xinetd mit systemctl restart xinetd neu.
Einige technische Hintergrundinformationen sowie die vollständigen PXE-Spezifikationen finden Sie in der „Preboot Execution Environment (PXE) Specification“ (http://www.pix.net/software/pxeboot/archive/pxespec.pdf).
Wechseln Sie in das Verzeichnis boot/<architecture>/loader des Installations-Repositorys und kopieren Sie die Dateien linux, initrd, message, biostest und memtest in das Verzeichnis /srv/tftpboot, indem Sie folgendes Kommando eingeben:
cp -a linux initrd message biostest memtest /srv/tftpboot
Installieren Sie das Paket syslinux mithilfe von YaST direkt von den Installations-DVDs.
Kopieren Sie die Datei /usr/share/syslinux/pxelinux.0 in das Verzeichnis /srv/tftpboot, indem Sie folgenden Befehl eingeben:
cp -a /usr/share/syslinux/pxelinux.0 /srv/tftpboot
Wechseln Sie in das Verzeichnis des Installations-Repositorys und kopieren Sie die Datei isolinux.cfg in das Verzeichnis /srv/tftpboot/pxelinux.cfg/default, indem Sie folgenden Befehl eingeben:
cp -a boot/<architecture>/loader/isolinux.cfg /srv/tftpboot/pxelinux.cfg/default
Bearbeiten Sie die Datei /srv/tftpboot/pxelinux.cfg/default und entfernen Sie die Zeilen, die mit readinfo und framebuffer beginnen.
Fügen Sie die folgenden Einträge in die append-Zeilen der standardmäßigen Kennungen failsafe und apic ein:
insmod=kernel module
Durch diesen Eintrag geben Sie das Netzwerk-Kernelmodul an, das zur Unterstützung der Netzwerkinstallation auf dem PXE-Client erforderlich ist. Ersetzen Sie kernel module durch den entsprechenden Modulnamen Ihres Netzwerkgeräts.
netdevice=interface
Dieser Eintrag definiert die Schnittstelle des Client-Netzwerks, die für die Netzwerkinstallation verwendet werden muss. Dieser Eintrag ist jedoch nur erforderlich und muss entsprechend angepasst werden, wenn der Client mit mehreren Netzwerkkarten ausgestattet ist. Falls nur eine Netzwerkkarte verwendet wird, kann dieser Eintrag ausgelassen werden.
install=nfs://ip_instserver/path_to_repository/DVD1
Dieser Eintrag gibt den NFS-Server und das Repository für die Client-Installation an. Ersetzen Sie ip_instserver durch die tatsächliche IP-Adresse Ihres Installationsservers. path_to_repository muss durch den tatsächlichen Pfad des Repositorys ersetzt werden. HTTP-, FTP- oder SMB-Repositorys werden auf ähnliche Weise adressiert. Eine Ausnahme ist das Protokollpräfix, das wie folgt lauten sollte: http, ftp oder smb.
Wenn den Installationsroutinen weitere Boot-Optionen, z. B. SSH- oder VNC-Boot-Parameter, übergeben werden sollen, hängen Sie sie an den Eintrag install an. Einen Überblick über die Parameter sowie einige Beispiele finden Sie in Abschnitt 5.2, „Booten des Zielsystems für die Installation“.
Es ist möglich, unterschiedliche Dateinamen für Kernel- und initrd-Images zu verwenden. Dies ist nützlich, wenn Sie am selben Bootserver unterschiedliche Betriebssysteme bereitstellen möchten. Sie sollten sich jedoch dessen bewusst sein, dass in den Dateinamen, die von TFTP für den PXE-Boot angegeben werden, nur ein Punkt erlaubt ist.
Im Folgenden finden Sie die Beispieldatei /srv/tftpboot/pxelinux.cfg/default. Passen Sie das Protokollpräfix für das Repository gemäß der Netzwerkkonfiguration an und geben Sie die bevorzugte Methode an, mit der die Verbindung zum Installationsprogramm hergestellt werden soll, indem Sie die Optionen vnc und VNCPassword oder ssh und ssh.password zum Eintrag install hinzufügen. Die durch \ getrennten Zeilen müssen als fortlaufenden Zeile ohne Zeilenumbruch und ohne den \ eingegeben werden.
default harddisk
# default
label linux
kernel linux
append initrd=initrd ramdisk_size=65536 \
install=nfs://ip_instserver/path_to_repository/product/DVD1
# repair
label repair
kernel linux
append initrd=initrd splash=silent repair=1 showopts
# rescue
label rescue
kernel linux
append initrd=initrd ramdisk_size=65536 rescue=1
# bios test
label firmware
kernel linux
append initrd=biostest,initrd splash=silent install=exec:/bin/run_biostest showopts
# memory test
label memtest
kernel memtest
# hard disk
label harddisk
localboot 0
implicit 0
display message
prompt 1
timeout 100Ersetzen Sie ip_instserver und path_to_repository durch die in Ihrer Konfiguration verwendeten Werte.
Der folgende Abschnitt dient als Kurzreferenz für die in dieser Konfiguration verwendeten PXELINUX-Optionen. Weitere Informationen zu den verfügbaren Optionen finden Sie in der Dokumentation des Pakets syslinux, die sich im Verzeichnis /usr/share/doc/packages/syslinux/ befindet.
Die hier aufgeführten Optionen sind eine Teilmenge der für die PXELINUX-Konfigurationsdatei verfügbaren Optionen.
APPEND Optionen...
Fügt der Kernel-Kommandozeile eine oder mehrere Optionen hinzu. Diese werden sowohl bei automatischen als auch bei manuellen Bootvorgängen hinzugefügt. Die Optionen werden an den Beginn der Kernel-Kommandozeile gesetzt und ermöglichen, dass explizit eingegebene Kernel-Optionen sie überschreiben können.
APPEND -
Es wird nichts angehängt. APPEND mit einem Bindestrich als Argument in einem LABEL-Abschnitt kann zum Überschreiben einer globalen APPEND-Option verwendet werden.
DEFAULT Kernel Optionen...
Legt die standardmäßige Kernel-Kommandozeile fest. Wenn PXELINUX automatisch gebootet wird, agiert es, als wären die Einträge nach DEFAULT in der Booteingabeaufforderung eingegeben worden, außer, dass die Option für das automatische Booten (boot) automatisch hinzugefügt wird.
Wenn keine Konfigurationsdatei vorhanden oder der DEFAULT-Eintrag in der Konfigurationsdatei nicht definiert ist, wird standardmäßig der Kernel-Name „linux“ ohne Optionen verwendet.
IFAPPEND FLAG
Fügt eine bestimmte Option in die Kernel-Kommandozeile ein, abhängig vom Wert für FLAG. Die Option IFAPPEND ist nur unter PXELINUX verfügbar. Für FLAG ist ein Wert erforderlich, siehe Tabelle 4.1, „Generierte und hinzugefügte Optionen für Kernel-Kommandozeilen von IFAPPEND“:
IFAPPEND #|
Argument |
Generierte Kernel-Kommandozeile/Beschreibung |
|---|---|
|
|
ip=CLIENT_IP:BOOT_SERVER_IP:GW_IP:NETMASK Die Platzhalter werden auf der Grundlage der Eingaben vom DHCP/BOOTP- oder PXE-Boot-Server ersetzt. Diese Option ist kein Ersatz für das Ausführen eines DHCP-Clients im gebooteten System. Ohne regelmäßige Verlängerung läuft die vom PXE BIOS erworbene Lease ab, sodass die IP-Adresse zur erneuten Verwendung durch den DHCP-Server verfügbar wird. |
|
|
BOOTIF=MAC_ADDRESS_OF_BOOT_INTERFACE Mit dieser Option lässt sich eine Zeitüberschreitung vermeiden, wenn der Installationsserver die LAN-Schnittstellen einzeln nacheinander abfragt, bis er eine Antwort von einem DHCP-Server erhält. Ein initrd-Programm kann dabei ermitteln, von welcher Schnittstelle das System gebootet wurde. linuxrc liest diese Option aus und verwendet die erkannte Netzwerkschnittstelle. |
|
|
SYSUUID=SYSTEM_UUID
Fügt UUIDs im Hexadezimalformat mit Kleinbuchstaben hinzu, siehe |
LABEL Kennung KERNEL Image APPEND Optionen...
Gibt an, dass, wenn Kennung als zu bootender Kernel eingegeben wird, PXELINUX stattdessen Image booten soll und die angegebenen APPEND-Optionen an Stelle der im globalen Abschnitt der Datei (vor dem ersten LABEL-Kommando) angegebenen Optionen verwendet werden sollen. Die Vorgabe für Image ist dieselbe wie für Kennung und wenn keine APPEND-Optionen angegeben sind, wird standardmäßig der globale Eintrag verwendet (sofern vorhanden). Es sind bis zu 128 LABEL-Einträge zulässig.
PXELINUX verwendet die folgende Syntax:
label mylabel kernel mykernel append myoptions
Kennungen werden wie Dateinamen umgesetzt und müssen nach der Umsetzung (sogenanntes Mangling) eindeutig sein. Die beiden Kennungen „v2.6.30“ und „v2.6.31“ wären beispielsweise unter PXELINUX nicht unterscheidbar, da beide auf denselben DOS-Dateinamen umgesetzt würden.
Der Kernel muss kein Linux-Kernel, sondern kann ein Bootsektor oder eine COMBOOT-Datei sein.
LOCALBOOT Typ
Wenn Sie unter PXELINUX LOCALBOOT 0 an Stelle einer KERNEL-Option angeben, bedeutet dies, dass diese bestimmte Kennung aufgerufen und die lokale Festplatte an Stelle eines Kernels gebootet wird.
|
Argument |
Beschreibung |
|---|---|
|
|
Führt einen normalen Bootvorgang aus |
|
|
Führt einen lokalen Bootvorgang mit dem noch im Arbeitsspeicher vorhandenen UNDI-Treiber (Universal Network Driver Interface) aus |
|
|
Führt einen lokalen Bootvorgang mit dem gesamten PXE-Stack, einschließlich des UNDI-Treibers aus, der sich im Arbeitsspeicher befindet |
Alle anderen Werte sind nicht definiert. Wenn Sie die Werte für die UNDI- oder PXE-Stacks nicht wissen, geben Sie 0 an.
TIMEOUT Zeitlimit
Gibt in Einheiten von 1/10 Sekunde an, wie lange die Booteingabeaufforderung angezeigt werden soll, bevor der Bootvorgang automatisch gestartet wird. Das Zeitlimit wird aufgehoben, sobald der Benutzer eine Eingabe über die Tastatur vornimmt, da angenommen wird, dass der Benutzer die Eingabe des Kommandos abschließt. Mit einem Zeitlimit von Null wird das Zeitüberschreitungsoption deaktiviert (dies ist die Vorgabe). Der größtmögliche Wert für das Zeitlimit ist 35996 (etwas weniger als eine Stunde).
PROMPT flag_val
Wenn flag_val auf 0 gesetzt ist, wird die Booteingabeaufforderung nur angezeigt, wenn die Taste Umschalttaste oder Alt gedrückt wird oder die Feststelltaste oder die Taste Rollen gesetzt ist (dies ist die Standardeinstellung). Wenn flag_val 1 ist, wird die Booteingabeaufforderung immer angezeigt.
F2 filename F1 filename ..etc... F9 filename F10 filename
Zeigt die angegebene Datei auf dem Bildschirm an, wenn an der Booteingabeaufforderung eine Funktionstaste gedrückt wird. Mithilfe dieser Option kann auch die Preboot-Online-Hilfe implementiert werden (für die Kernel-Kommandozeilenoptionen). Aus Gründen der Kompabilität mit früheren Versionen kann F10 auch als F0 verwendet werden. Beachten Sie, dass derzeit keine Möglichkeit besteht, Dateinamen an F11 und F12 zu binden.
Bereiten Sie das System-BIOS für PXE-Boot vor, indem Sie die PXE-Option in die BIOS-Boot-Reihenfolge aufnehmen.
Die PXE-Option darf im BIOS nicht vor der Boot-Option für die Festplatte stehen. Andernfalls würde dieses System versuchen, sich selbst bei jedem Booten neu zu installieren.
Wake-on-LAN (WOL) erfordert, dass die entsprechende BIOS-Option vor der Installation aktiviert wird. Außerdem müssen Sie sich die MAC-Adresse des Zielsystems notieren. Diese Daten sind für das Initiieren von Wake-on-LAN erforderlich.
Mit Wake-on-LAN kann ein Computer über ein spezielles Netzwerkpaket, das die MAC-Adresse des Computers enthält, gestartet werden. Da jeder Computer einen eindeutigen MAC-Bezeichner hat, ist es nicht möglich, dass versehentlich ein falscher Computer gestartet wird.
Wenn sich der Steuercomputer nicht im selben Netzwerksegment wie das zu startende Installationsziel befindet, konfigurieren Sie die WOL-Anforderungen entweder so, dass sie als Multicasts verteilt werden, oder steuern Sie einen Computer in diesem Netzwerksegment per entferntem Zugriff so, dass er als Absender dieser Anforderungen agiert.
Benutzer von SUSE Linux Enterprise können zur einfachen Konfiguration von Wake-on-LAN ein YaST-Modul namens WOL verwenden. Die Benutzer anderer Betriebssysteme mit der Basis SUSE Linux können ein Kommandozeilenwerkzeug verwenden.
Melden Sie sich als root-Benutzer an.
Starten Sie › › .
Klicken Sie auf , und geben Sie den Hostnamen und die MAC-Adresse des Zielsystems ein.
Wählen Sie zum Einschalten dieser Maschine den entsprechenden Eintrag und klicken Sie auf (Aufwachen).