Good to Know Database

openSUSE 10.2: Remoteinstallation via PXE


1. Einleitung

In diesem Tutorial möchte ich beschreiben wie Sie openSUSE 10.2 remote über das Netzwerk installieren können. Dazu wird ein bereits konfigurierter PXE-Server, ein NFS-Server sowie ein SSH-Client bzw. ein VNC-Viewer benötigt.

2. openSUSE 10.2 Installationsdateien über NFS bereitstellen

In diesem Kapitel werden wir die openSUSE 10.2 Installations-DVD über NFS im Netzwerk zur Verfügung stellen. Sollten Sie noch keinen NFS-Server installiert haben, befolgen Sie bitte zuerst das Tutorial NFS einrichten.

In diesem Beispiel werden wir zuerst die gesamte openSUSE 10.2 DVD in das Verzeichnis /data/nfs/suse10.2 kopieren. Dazu führen Sie die folgenden Befehle aus.

opensuse:~ # mkdir /data
opensuse:~ # mkdir /data/nfs
opensuse:~ # mkdir /data/nfs/suse10.2
opensuse:~ # mount -t iso9660 /dev/hdc /mnt
opensuse:~ # cp -r /mnt/* /data/nfs/suse10.2

Nachdem alle Dateien auf die Festplatte kopiert wurden, öffnen Sie die Datei /etc/exports.

opensuse:~ # mcedit /etc/exports

Fügen Sie nun am Ende der Datei die folgende Zeile ein.

/data/nfs/suse10.2     (ro)

Speichern Sie die Datei ab und starten den NFS-Server neu.

opensuse:~ # rcnfsserver restart

3. openSUSE 10.2 via PXE installieren

Im folgenden Abschnitt benötigen Sie einen bereits konfigurierten PXE-Server. Wie sie einen PXE-Server installieren und konfigurieren erfahren Sie in dem Tutorial PXE einrichten.

Zuerst kopieren Sie das openSUSE 10.2 Bootimage in das Verzeichnis /tftpboot/suse10.2.

opensuse:~ # mkdir /tftpboot/suse10.2
opensuse:~ # cp /data/nfs/suse10.2/boot/loader/initrd /tftpboot/suse10.2/
opensuse:~ # cp /data/nfs/suse10.2/boot/loader/linux /tftpboot/suse10.2/

Um das Bootimage via PXE booten zu können, müssen Sie die Datei /tftpboot/pxelinux.cfg/default um folgenden Abschnitt erweitern.

label suse10.2
  kernel /suse10.2/linux
  append initrd=/suse10.2/initrd vga=791

Wenn Sie die Installationsquelle (hier die NFS-Freigabe) nicht immer manuell angeben wollen, müssen Sie diese wie folgt in der append-Zeile eintragen.

install=nfs://192.168.10.1:/data/nfs/suse10.2/

Da wir auch im Bootmenü einen Eintrag für die Installation von openSUSE 10.2 möchten, fügen Sie die folgende Zeile in die Datei /tftpboot/pxelinux.cfg/boot.msg.

- To install openSUSE 10.2, type:   suse10.2 <ENTER>

Jetzt können Sie bereits openSUSE 10.2 vom Netzwerk booten und installieren.

4. Remoteinstallation mit SSH

Wenn Sie keine Grafikkarte in einem Rechner haben oder die Installation einfach nur remote von einem anderen Rechner durchführen wollen, können Sie dies mit SSH oder grafisch mit VNC realisieren. Im folgenden Kapitel möchte ich die Installation mit SSH beschreiben.

Damit die Installation über SSH aktiviert wird, werden mindestens zwei Parameter benötigt. Der Parameter ssh=1 aktiviert den SSH-Server und mit dem Parameter sshpassword wird das SSH-Passwort übergeben.

Wenn Sie nun die Installation mit diesen Parametern starten, wird zwar SSH aktiviert, aber es wird eine IP-Adresse vom DHCP-Server verwendet welche Sie unter Umständen nicht wissen. Sollten Sie also keinen Monitor an dem zu installierenden Rechner angeschlossen haben, empfiehlt es sich der MAC-Adresse eine feste IP-Adresse im DHCP-Server zuzuweisen oder eine IP-Adresse als Bootparameter zu übergeben. Um die IP-Adresse als Parameter zu übergeben, verwendet man die Optionen hostip und netmask. Wenn Sie den Parameter hostip in der Form 192.168.10.200/24 angeben, entfällt die Option netmask da diese bereits mit /24 angegeben wurde.

Der Eintrag in der Datei /tftpboot/pxelinux.cfg/default könnte dann wie folgt aussehen.

label suse10.2_ssh
  kernel /suse10.2/linux
  append initrd=/suse10.2/initrd vga=791 install=nfs://192.168.10.1:/data/nfs/suse10.2/ ssh=1 sshpassword=password hostip=192.168.10.200/24

Wenn Sie den Rechner jetzt von PXE booten und suse10.2_ssh auswählen, wird das openSUSE 10.2 Bootimage geladen und ein SSH-Server gestartet mit dessen Hilfe Sie die Installation vornehmen können.

Hinweis: Wenn Sie keinen Monitor an dem Rechner haben, können Sie den Eintrag suse10.2_ssh entweder als Defaultwert in der Datei /tftpboot/pxelinux.cfg/default eintragen oder ein eigenes Bootmenü für diesen Rechner erstellen. Wie Sie dies realisieren können Sie in Kapitel 6 nachlesen.

Nach einer Weile erhalten Sie die folgende Ausgabe auf dem Bildschirm (vorausgesetzt Sie haben einen angeschlossen).

***  sshd has been started  ***

***  login using 'ssh -X root@192.168.10.200'  ***
***  run 'yast' to start the installation  ***

Öffnen Sie nun eine Verbindung zum SSH-Server (hier wird PuTTY verwendet) und melden sich mit dem Benutzernamen root und dem übergebenen Passwort an. Danach starten Sie die Installation mit dem Befehl yast.

Hinweis: Während der Installation wird ein Neustart durchgeführt, wonach Sie erneut eine SSH-Verbindung aufbauen müssen. Um die Installation weiterzuführen, führen Sie den folgenden Befehl aus.

opensuse:~ # /usr/lib/YaST2/startup/YaST2.ssh

5. Remoteinstallation mit VNC

Wie bereits im vorherigen Kapitel erwähnt, kann man die Remoteinstallation auch mit VNC durchführen.
 
Damit VNC aktiviert wird, benötigt man ebenfalls wie bei SSH mindestens zwei Parameter. Der Parameter vnc=1 aktiviert den VNC-Server und der Parameter vncpassword übergibt das Login-Passwort.

Wie bereits bei der Remoteinstallation mit SSH erwähnt, sollte man auch hier eine IP-Adresse im DHCP-Server hinterlegen oder als Parameter übergeben.

Der Eintrag in der Datei /tftpboot/pxelinux.cfg/default könnte dann wie folgt für die Remoteinstallation mit VNC aussehen.

label suse10.2_vnc
  kernel /suse10.2/linux
  append initrd=/suse10.2/initrd vga=791 install=nfs://192.168.10.1:/data/nfs/suse10.2/ vnc=1 vncpassword=password hostip=192.168.10.200/24

Wenn Sie jetzt von PXE booten und suse10.2_vnc auswählen, wird das openSUSE 10.2 Bootimage geladen und ein VNC-Server gestartet.
 
Hinweis: Wenn Sie keinen Monitor an dem Rechner haben, können Sie den Eintrag suse10.2_vnc entweder als Defaultwert in der Datei /tftpboot/pxelinux.cfg/default eintragen oder ein eigenes Bootmenü für diesen Rechner erstellen. Wie Sie dies realisieren können Sie im nächsten Kapitel nachlesen.

Nach einer Weile erhalten Sie die folgende Ausgabe auf dem Bildschirm (vorausgesetzt Sie haben einen angeschlossen).

***
***  You can connect to 192.168.10.200, display :1 now with vncviewer
***  Or use a Java capable browser on http://192.168.10.200:5801/
***

Öffnen Sie nun eine Verbindung zum VNC-Server mit Hilfe vom VNC-Viewer (192.168.10.200:1) oder mit einem Internet-Browser (http://192.168.10.200:5801) und melden sich mit dem übergebenen Passwort an. Danach können Sie wie gewohnt die Installation vornehmen.

Hinweis: Während der Installation wird ein Neustart durchgeführt, wonach Sie erneut eine VNC-Verbindung aufbauen müssen um die Installation fortzusetzen.

6. Unterschiedliche PXE-Menüs für verschiedene MAC-Adressen

Wenn Sie unterschiedliche PXE-Menüs für verschiedene MAC-Adressen erstellen wollen, benötigen Sie zuerst die jeweilige MAC-Adresse des Rechners. Wenn die ausgelesene MAC-Adresse zum Beispiel 00:10:C6:22:E5:5E lautet, erstellen Sie unter /tftpboot/pxelinux.cfg/ eine Datei mit dem Namen 01-00-10-c6-22-e5-5e. Wie Sie sehen, enthalten die letzten sechs Blöcke des Dateinamen die einzelnen Blöcke der ausgelesenen MAC-Adresse.

Der Inhalt der Datei /tftpboot/pxelinux.cfg/01-00-10-c6-22-e5-5e könnte wie folgt aussehen.

prompt 1
default suse10.2_vnc
timeout 1

label suse10.2_vnc
  kernel /suse10.2/linux
  append initrd=/suse10.2/initrd vga=791 install=nfs://192.168.10.1:/data/nfs/suse10.2/ vnc=1 vncpassword=password hostip=192.168.10.200/24

Sollte jetzt der Rechner mit der MAC-Adresse 00:10:C6:22:E5:5E von PXE booten, wird anstelle der Datei /tftpboot/pxelinux.cfg/default die soeben erstellte Datei geladen und sofort die Remoteinstallation von openSUSE 10.2 über VNC gestartet.


Dieser Eintrag wurde am 21.12.2006 erstellt und zuletzt am 24.01.2016 bearbeitet.

Direkter Link zu dieser Seite: http://www.gtkdb.de/index_35_866.html

[ Zur Startseite ]   [ Zur Kategorie ]


Valid XHTML 1.0 Transitional Valid CSS Valid Atom 1.0

© 2004-2018 by Georg Kainzbauer