Good to Know Database

SuSE Linux 10.1: Remoteinstallation via PXE


1. Einleitung

In diesem Tutorial möchte ich beschreiben wie Sie SuSE Linux 10.1 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. SuSE Linux 10.1 Installationsdateien über NFS bereitstellen

In diesem Kapitel werden wir die SuSE Linux 10.1 Installations-DVD über NFS im Netzwerk zur Verfügung stellen. Sollten Sie noch keinen NFS-Server installiert haben, befolgen Sie bitte zuerste das Tutorial "NFS einrichten" welches Sie ebenfalls auf meiner Homepage finden.

In diesem Beispiel werden wir zuerst die gesamte SuSE Linux 10.1 DVD in das Verzeichnis /data/nfs/suse10.1 kopieren. Dazu führen Sie die folgenden Befehle aus.

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

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

suse101:~ # mcedit /etc/exports

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

/data/nfs/suse10.1     (ro)

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

suse101:~ # rcnfsserver restart

3. SuSE Linux 10.1 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" welches auch auf meiner Homepage zu finden ist.

Zuerst kopieren Sie das SuSE Linux 10.1 Bootimage in das Verzeichnis /tftpboot/suse10.1.

suse101:~ # mkdir /tftpboot/suse10.1
suse101:~ # cp /data/nfs/suse10.1/boot/loader/initrd /tftpboot/suse10.1/
suse101:~ # cp /data/nfs/suse10.1/boot/loader/linux /tftpboot/suse10.1/

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

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

Damit automatisch Module für die Netzwerkkarte(n) geladen werden, sollten Sie noch folgende Optionen in die append-Zeile eintragen.

insmod=8139too insmod=e100 insmod=e1000

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.1/

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

- To install SuSE Linux 10.1, type:   suse10.1 <ENTER>

Jetzt können Sie bereits SuSE Linux 10.1 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 installierdenen 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.1_ssh
  kernel /suse10.1/linux
  append initrd=/suse10.1/initrd vga=791 insmod=8139too insmod=e100 insmod=e1000 install=nfs://192.168.10.1:/data/nfs/suse10.1/ ssh=1 sshpassword=password hostip=192.168.10.200/24

Wenn Sie den Rechner jetzt von PXE booten und suse10.1_ssh auswählen, wird das SuSE Linux 10.1 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.1_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 angeschloßen).

***  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.

suse101:~ # /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.1_vnc
  kernel /suse10.1/linux
  append initrd=/suse10.1/initrd vga=791 insmod=8139too insmod=e100 insmod=e1000 install=nfs://192.168.10.1:/data/nfs/suse10.1/ vnc=1 vncpassword=password hostip=192.168.10.200/24

Wenn Sie jetzt von PXE booten und suse10.1_vnc auswählen, wird das SuSE Linux 10.1 Bootimage geladen und ein VNC-Server gestartet.
 
Hinweis: Wenn Sie keinen Monitor an dem Rechner haben, können Sie den Eintrag suse10.1_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 angeschloßen).

***
***  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.1_vnc
timeout 1

label suse10.1_vnc
  kernel /suse10.1/linux
  append initrd=/suse10.1/initrd vga=791 insmod=8139too insmod=e100 insmod=e1000 install=nfs://192.168.10.1:/data/nfs/suse10.1/ 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 SuSE Linux 10.1 über VNC gestartet.


Dieser Eintrag wurde am 23.05.2006 erstellt und zuletzt am 03.11.2012 bearbeitet.

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

[ Zur Startseite ]   [ Zur Kategorie ]


Valid XHTML 1.0 Transitional Valid CSS Valid Atom 1.0

© 2004-2018 by Georg Kainzbauer