Login
Newsletter
Werbung

So, 20. Oktober 2002, 00:00

Kickstart: Linux-Installation für faule Admins

In diesem Workshop wird eine automatisierte Installation mit Kickstart durchgeführt und schrittweise verfeinert.

Allgemeines

Inhalt

In diesem Workshop möchte eine kurze Projektbeschreibung abgeben, in der ich eine automatisierte Installation durchführe und diese schrittweise verfeinere. Dieser Workshop ist vor allem für Schulen oder Bildungseinrichtungen geeignet, die sehr oft Neuinstallationen durchführen müssen und eine zentrale Daten- und Applikationshaltung möchten.

Ausstattung

Die Clients bedürfen keinerlei besonderer Ausstattung. Allerdings ist kompatible und unterstützte Hardware sehr von Vorteil, da sie automatisch erkannt wird und die Distribution meist beiliegende Treiber dafür bereit hält. Der Server darf ruhig etwas größer dimensioniert sein, da er (bei mir) zum einen als NFS-Server (Home-Directories) und zum anderen als X-Applikationsserver dienen wird. Bei der Distribution verwende ich Red Hat, aber auch andere Distributionen unterstützen automatische Installationen. Ihr müsst also eure geliebten Boxen nicht ausradieren :-)

Kickstart

Grundlagen

Kickstart bezeichnet die automatische Installation unter Red Hat. Dabei wird ein Konfigurationsliste erstellt, auf der alle von der Installation benötigten Fragen abgearbeitet werden. Lassen wir uns doch einmal spaßeshalber diese Konfigurationsliste einmal automatisch erstellen.

mkkickstart > kickstart.txt

Sollte dies nicht funktionieren, schaut mal kurz nach, ob das RPM-Paket mkkickstart-x.x.x.rpm installiert ist [rpm -qa | grep kickstart] und installiert es bei Bedarf nach.

Schauen wir uns das Ergebnis kurz einmal an. Es sollte ungefähr das Folgende in der Datei stehen.

lang de_DE@euro
#network --bootproto static --ip 10.0.0.1 --netmask 255.255.255.0 --gateway
10.0.0.254
cdrom
keyboard "de-latin1"
zerombr yes
clearpart --linux
part swap --size 299
install
mouse generic --device ttyS1 rootpw --iscrypted
auth --useshadow
lilo --location mbr
%packages
redhat-logos
glibc
... [stark gekürzt] ...
%post

Genau mit diesen Daten habe ich damals meine Installation durchgeführt. Auf Basis dieses Schemas werden wir nun unsere individuelle Konfiguration festlegen, womit die Clients installiert werden.

Vorbereitungen

Zuerst sollte man sich genau überlegen, über welches Medium man die Installation macht. Allgemein üblich ist die Wahl der CDROM (siehe oben). Wer allerdings schon einmal einen Raum mit mehr als 10 Clients eingerichtet hat, weiß, dass dies keine Zukunft hat. Kickstart bietet zusätzlich die Möglichkeit, eine Netzinstallation durchzuführen, bei der die Installationspakete und -daten zentral auf einem Server liegen und von dort verteilt werden können. Ob diese Methode nun über NFS, FTP oder HTTP durchgeführt wird, ist prinzipiell egal, jedoch wird die Wahl meist, aus Performancegründen, auf NFS fallen. D.h. Ihre erste Aufgabe wird sein, einen NFS-Server zu installieren und die beiden CDs in ein Verzeichnis zu kopieren. Benötigt wird die CD1 komplett und von CD2 lediglich die RPM-Pakete (/Red Hat/RPMS/*, evtl. /images auch noch - je nach Version).

Bootdiskette

Um dem Client anzugeben, dass er nicht lokal nach Daten suchen soll, müssen wir noch eine Netzboot-Diskette erstellen.

dd if=/kickstart/images/bootnet.img of=/dev/fd0

Da zusätzlich noch einiges mehr auf diese Diskette kopiert wurde, säubern wir diese noch etwas, um Platz zu schaffen. Bis auf vmlinuz, syslinux.cfg, ldlinux.sys und initrd.img kann alles andere gelöscht werden, da es nicht wesentlich für uns ist. Nun müssen wir noch die Boot-Datei syslinux.cfg bearbeiten. Kommen die verschiedenen Zeilen bekannt vor? Genau. Dies sind die verschiedenen Boot-Optionen beim Start der Installation. Auch hier bitte alle Optionen löschen, bis die Datei ungefähr folgendermaßen aussieht:

Default linux
Prompt 10 Label linux
 Kernel vmlinuz
 Append initrd=initrd.img lang=de ks=floppy

Die Option ks=floppy muss zusätzlich eingefügt werden, da sie noch nicht vorhanden ist. Die Zeilen dürften eigentlich selbsterklärend sein. Append bedeutet, dass diese Optionen zusätzlich als Startparameter dem Kernel mitgegeben werden. Der Parameter ks=floppy zeigt dem Kernel nun, dass die Konfigurationsliste auf der Bootdiskette zu finden ist.

Ks.cfg

So, nun zur Konfigurationsdatei selbst. Standardmäßig heißt diese Datei ks.cfg und ist, wie bereits gesehen, nichts anderes als ein reines ASCII-File. Fangen wir nun mit den Optionen an. (Die Optionen sind erstklassig und genau unter www.linuxfibel.de beschrieben).

lang de_DE
keyboard "de-latin1-nodeadkeys"
mouse --device ps/2 # Vorsicht: ich hatte anfangs
 # keine Maus [none] angegeben,
 # was sich jedoch nachher bei der
 # X-Installation als nachteilig
 # herausstellte rootpw geheim
auth --useshadow --enablemd5
lilo --location mbr
skipx # Zuerst ohne X
# Jetzt wird's wichtig!
nfs --server 10.100.0.1 --dir /kickstart/
network --device eth0 # wichtig bei mehreren Devices
 --ip 10.100.0.2
 --netmask 255.0.0.0
 --hostname einstein
 --gateway 10.0.0.254
 --nameserver 10.0.0.253
 --bootproto static # erst einmal eine feste IP-Adresse
# Installation
install
clearpart --all
part swap --ondisk hda --size 128
part / --ondisk hda --grow
# Pakete
%packages
@base # reicht erst mal zum Testen ;-)

Nachdem die Datei erstellt wurde, einfach auf die Diskette kopieren und los geht's.

Finale Grande

Einlegen und Einschalten!

Zuerst läuft alles normal ab. Der Kernel wird gebootet (mit den Parametern, die mitgegeben werden), eine Ramdisk im Speicher etabliert und unsere ks.cfg ausgelesen.

Nun wird der NFS-Server gesucht und gemountet, anschließend wird die Hardwareerkennung (Anaconda) gestartet. Sollte ein Tippfehler oder ungültiges Device angegeben sein, erfolgt hier ein Abbruch und diverse Anaconda-Fehlermeldungen erscheinen. Hier ist oftmals die Bitte der Programmierer zu lesen, dass die Fehlermeldung einzusenden wäre, jedoch liegt der Fehler zu 99% in einer fehlerhaften ks.cfg (bitte nochmals prüfen!). Kommt die Installationsroutine mit etwas nicht klar, erscheint die manuelle Installationsroutine. Auch hier sollte die Datei nochmals überprüft werden. Eine kleine Hilfe findet ihr auf den Konsolen 3 und 4, die eure Installation mitbegleiten und evtl. Hilfestellung in Form von Fehlermeldungen bieten. Nun folgt noch die Partitionierung und Installation der angegebenen Pakete. Fertig!

Nach einem Reboot sollte nun ein fertig installiertes, funktionstüchtiges System auf euch warten. Glückwunsch :-)

Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung