Good to Know Database

Ubuntu 11.10: Automatisierte Installation mit Kickstart


Eine Methode um die Installation von Ubuntu zu automatisieren, ist die sogenannte Kickstart-Methode. Hier werden die Antworten auf die Fragen während der Installation in eine Konfigurationsdatei eingetragen, welche dann bei der Installation mit einem Bootparameter übergeben wird.

Die Kickstart-Datei können Sie entweder von Hand erstellen oder den Kickstart-Konfigurator verwenden.

Kickstart-Konfigurator installieren

Den Kickstart-Konfigurator, welcher im Paket system-config-kickstart enthalten ist, installieren Sie mit dem folgenden Befehl.

georg@ubuntu1110:~$ sudo apt-get install system-config-kickstart

Nachdem die Installation erfolgreich abgeschlossen wurde, können Sie den Kickstart-Konfigurator über Anwendungen -> Systemwerkzeuge -> Kickstart starten. Alternativ können Sie auch den folgenden Befehl verwenden.

georg@ubuntu1110:~$ system-config-kickstart &

Wie Sie sehen, stehen Ihnen hier die Konfigurationsmöglichkeiten zur Verfügung welche Sie bereits von der Ubuntu-Installation kennen.

Kickstart-Konfigurationsdatei erstellen

Im folgenden will ich die wichtigsten Optionen kurz ansprechen und die daraus resultierenden Anweisungen in der Kickstart-Datei vorstellen.

Basiskonfiguration

Unter den Basiskonfigurationen stehen Ihnen die folgenden Einstellungen zur Verfügung.

Standard-Sprache: Hier wird die Standard-Sprache eingestellt welche bei der Installation mit Hilfe der Kickstart-Datei installiert werden soll. Wenn Sie German (Germany) ausgewählt haben, wird die folgende Anweisung in die Kickstart-Datei eingetragen.

lang de_DE

Tastatur: Diese Einstellung legt das verwendete Tastatur-Layout fest.

keyboard de

Maus: Hier werden die Einstellungen für die verwendete Maus vorgenommen.

mouse

Zeitzone: Dieser Eintrag legt die Zeitzone des zu installierenden Systems fest.

timezone Europe/Berlin

Sollten Sie die Option Benutze UTC Zeit aktiviert haben, sieht der Eintrag wie folgt aus.

timezone --utc Europe/Berlin

Sprachunterstützung: Wenn Sie keine weitere Sprachunterstützung ausgewählt haben, wird die folgende Anweisung in die Kickstart-Datei aufgenommen.

langsupport de_DE

Sollten Sie zum Beispiel zusätzlich English (United Kingdom) ausgewählt haben, sieht der Eintrag wie folgt aus.

langsupport en_GB --default=de_DE

Ziel Architekur: Diese Einstellung legt fest welche Architektur installiert werden soll. Für ein x86-System sieht der Eintrag wie folgt aus.

#platform=x86

Für die Installation eines 64bit-Systems sieht der Eintrag folgendermaßen aus.

#platform=AMD64 or Intel EM64T

System nach der Installation neu starten: Diese Option sollten Sie am Besten aktiviert lassen, damit das System nach der Installation automatisch neu gestartet wird.

reboot

Perform installation in text mode: Sollten Sie die Installation im Textmodus durchführen wollen, lassen Sie diese Option aktiviert.

text

Installation im interaktiven Modus ausführen: Damit die Installation im interaktiven Modus durchgeführt wird, müssen Sie diese Option aktivieren.

interactive

Installationsmethode

Unter der Rubrik Installationsmethode können Sie nur die Installationsquelle angeben.

Führen Sie eine neue Installation aus: Im Gegensatz zum Kickstart von RedHat gibt es bei Ubuntu derzeit nur die Möglichkeit eine neue Installation durchzuführen.

install

Installationsmethode wählen: Hier stehen Ihnen die folgenden Installationsmethoden zur Verfügung.

Für die Installation von einer CD/DVD wählen Sie CD-ROM aus.

cdrom

Die Installationspakete können Sie auch von einem FTP-Server herunterladen.

url --url ftp://server.home.lan/pub/linux/ubuntu/

Neben dem FTP-Server können Sie auch einen HTTP-Server angeben.

url --url http://server.home.lan/ubuntu

Als letzte Möglichkeit können Sie die Installationspakete von der Festplatte laden.

harddrive --dir=/ubuntu --partition=/dev/sdb1

Bootloader-Optionen

Unter den Bootloader-Optionen finden Sie alle Einstellungen der GRUB-Konfiguration. Die folgende Zeile in der Kickstart-Datei sorgt dafür, dass kein Bootloader installiert wird.

bootloader --location=none

Damit der Bootloader im Master Boot Record (MBR) installiert wird, muss die folgende Zeile in der Kickstart-Datei existieren.

bootloader --location=mbr

Wollen Sie den Bootloader stattdessen in den ersten Sektor der Bootpartition installieren, sieht die Konfiguration wie folgt aus.

bootloader --location=partition

Sollten Sie ein GRUB-Passwort verwenden wollen, können Sie dieses entweder unverschlüsselt ...

bootloader --location=mbr --password=password

... oder verschlüsselt angeben.

bootloader --location=mbr --md5pass=$1$e0d.Ugli$4gBX2WF8DZhChURE2MmYJ0

Wollen Sie dem Kernel zusätzliche Parameter übergeben, können Sie diese wie folgt hinterlegen, damit sie bei der Installation in die /boot/grub/menu.lst eingetragen werden.

bootloader --location=mbr --append <kernelparameters>

Partitionsinformationen

In der Rubrik Partitionsinformationen können Sie festlegen welche Partitionen auf dem System angelegt werden sollen beziehungsweise ob die bereits vorhandenen Partitionen bestehen bleiben und gegebenenfalls weiterverwendet werden sollen.

Damit vor der Installation des Bootloaders der Master Boot Record (MBR) gelöscht wird, existiert die folgende Angabe.

zerombr yes

Soll der MBR nicht gelöscht werden, verzichten Sie auf diese Angabe.

Um alle existierenden Partitionen zu löschen verwenden sie die folgende Angabe.

clearpart --all --initlabel

Damit nur die Linux-Partitionen gelöscht werden, wird die folgende Anweisung zum Kickstart hinzugefügt.

clearpart --linux --initlabel

Sollen keine Partitionen gelöscht werden, verzichten Sie auf die clearpart-Option.

Die folgenden Zeilen in der Kickstart-Datei erstellen eine Root-Partition mit 20GB, eine 1GB große SWAP-Partition und eine weitere Partition für die Benutzerverzeichnisse welche den restlichen Speicherplatz auf der Festplatte verwenden soll.

part / --fstype ext4 --size 20480 --asprimary
part swap --size 2048 --asprimary
part /home --fstype ext4 --size 1 --grow

Da bei der Partitionierung noch viele weitere Optionen zur Verfügung stehen, empfiehlt es sich hier den Kickstart-Konfigurator zu verwenden.

Netzwerk-Konfiguration

Hier können sie die Konfiguration der Netzwerkkarte(n) vornehmen. Soll die Netzwerkkarte die Einstellungen von einem DHCP-Server erhalten, sieht der Eintrag in der Kickstart-Datei wie folgt aus.

network --bootproto=dhcp --device=eth0

Existiert in Ihrem Netzwerk kein DHCP-Server oder Sie wollen dennoch eine statische IP-Adresse verwenden, müssen Sie die Einstellungen wie folgt angeben.

network --bootproto=static --ip=192.168.10.100 --netmask=255.255.255.0 --gateway=192.168.10.1 --nameserver=192.168.10.1 --device=eth0

Authentifizierung

Unter Authentifizierung wird die Konfiguration der Benutzeranmeldung vorgenommen. Sie können hier zwischen der Authentifizierung mit Hilfe von Shadow-Passwörtern, NIS, LDAP, Kerberos 5, ... wählen.

Ich will hier nur die Authentifizierung mit Shadow-Passwörtern zeigen, welche wie folgt in der Kickstart-Datei aktiviert wird.

auth --useshadow --enablemd5

User Configuration

Während der Installation von Ubuntu müssen Sie einen privilegierten Benutzer anlegen, weil der Root-Account standardmäßig deaktiviert ist. Die folgenden Zeilen erstellen deshalb automatisch einen privilegierten Benutzer.

rootpw --disabled
user georg --fullname "Georg Kainzbauer" --iscrypted --password $1$FikIoLie$EICgaFwqk9ad431kbtShX/

Wollen Sie stattdessen den Root-Account aktivieren und keinen Benutzer anlegen, verwenden Sie die folgenden Anweisungen.

rootpw --iscrypted $1$HfPvzh9G$KueKHMU6MAUMRLpYeApVg0
user --disabled

Firewall-Konfiguration

In der Firewall-Konfiguration können Sie die Firewall aktivieren oder deaktivieren sowie sichere Schnittstellen und Ports festlegen. Im folgenden wird die Firewall aktiviert und der SSH-Port in der Firewall geöffnet.

firewall --enabled --ssh

Um die Firewall zu deaktivieren, verwenden Sie die folgende Zeile.

firewall --disabled

Display-Konfiguration

In dieser Rubrik werden die Einstellungen zum X-Window System, zur Grafikkarte und zum Monitor vorgenommen. Wenn Sie die Kickstart-Datei für verschiedene Rechner verwenden wollen, sollten Sie diese Einstellungen nach der Installation vornehmen.

skipx

Paketauswahl

Leider bietet hier der Kickstart-Konfigurator keine Pakete zur Auswahl an, allerdings können Sie wie in dem folgenden Beispiel die gewünschten Pakete von Hand in die Kickstart-Datei eintragen.

%packages
@ ubuntu-standard
@ ubuntu-desktop
system-config-kickstart

Wie Sie sehen, wird hier neben den Paketgruppen ubuntu-standard und ubuntu-desktop auch noch das Paket system-config-kickstart zur Installation ausgewählt.

Skript vor der Installation

Hier können Sie wenn nötig ein Skript hinterlegen, welches vor der Installation aufgerufen wird.

%pre
echo "Dieses Skript wird vor der Installation ausgeführt."

Skript nach der Installation

In diesem Abschnitt können Sie ein Skript hinterlegen, welches nach der Installation aufgerufen wird.

%post
echo "Dieses Skript wird nach der Installation ausgeführt."

Nachdem Sie alle Einstellungen im Kickstart-Konfigurator vorgenommen haben, speichern Sie die Einstellungen ab. Eine Kickstart-Konfigurationsdatei könnte zum Beispiel wie folgt aussehen.

georg@ubuntu1110:~$ less ks.cfg
#Generated by Kickstart Configurator
#platform=AMD64 or Intel EM64T

#System language
lang de_DE
#Language modules to install
langsupport de_DE
#System keyboard
keyboard de
#System mouse
mouse
#System timezone
timezone --utc Europe/Berlin
#Root password
rootpw --disabled
#Initial user
user georg --fullname "Georg Kainzbauer" --iscrypted --password $1$FikIoLie$EICgaFwqk9ad431kbtShX/
#Reboot after installation
reboot
#Use text mode install
text
#Install OS instead of upgrade
install
#Use Web installation
url --url http://server.home.lan/ubuntu
#System bootloader configuration
bootloader --location=mbr
#Clear the Master Boot Record
zerombr yes
#Partition clearing information
clearpart --all --initlabel
#Disk partitioning information
part / --fstype ext4 --size 20480 --asprimary
part swap --size 2048 --asprimary
part /home --fstype ext4 --size 1 --grow
#System authorization infomation
auth  --useshadow  --enablemd5
#Network information
network --bootproto=dhcp --device=eth0
#Firewall configuration
firewall --disabled
#Do not configure the X Window System
skipx
#Package install information
%packages
@ ubuntu-standard
@ ubuntu-desktop
#Post Script
%post --interpreter=/bin/bash
sed -i 's/security\.ubuntu\.com/server\.home\.lan/g' /etc/apt/sources.list

Kickstart-Konfigurationsdatei verwenden

Damit diese Kickstart-Datei bei der Installation verwendet wird, müssen Sie den Pfad zu der Datei mit dem Kernel-Parameter ks übergeben. Je nachdem wie Sie während der Installation auf die Kickstart-Datei zugreifen wollen, müssen Sie eine der folgenden Formen verwenden.

Die folgenden Beispiele beziehen sich auf die Installation via PXE (siehe hierzu Ubuntu 11.10: Installation via PXE starten). Selbstverständlich können Sie die Installation auch mit einer Ubuntu 11.10 Installations-CD/DVD oder mit Hilfe eines anderen Bootmediums starten.

Wird Ihre Kickstart-Konfiguration von einem Webserver zur Verfügung gestellt, sieht die Pfadangabe wie folgt aus.

boot: ubuntu11.10_amd64 ks=http://server.home.lan/ubuntu/ks.cfg

Ähnlich wie bei einem Webserver wird die Kickstart-Datei bei einem FTP-Server angegeben.

boot: ubuntu11.10_amd64 ks=ftp://server.home.lan/pub/ubuntu/ks.cfg

Haben Sie die Datei ks.cfg auf einem NFS-Server hinterlegt, müssen Sie den Pfad in der folgenden Form angeben.

boot: ubuntu11.10_amd64 ks=nfs:server.home.lan:/ubuntu/ks.cfg

Sollten Sie die Kickstart-Datei in die Alternate-CD integriert haben, übergeben Sie die Pfadangabe wie folgt.

boot: ubuntu11.10_amd64 ks=cdrom:/ks.cfg

Wenn Sie die Kickstart-Datei in die initrd eingepflegt haben, können Sie wie folgt auf die ks.cfg verweisen.

boot: ubuntu11.10_amd64 ks=file:/ks.cfg


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

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

[ Zur Startseite ]   [ Zur Kategorie ]


Valid XHTML 1.0 Transitional Valid CSS Valid Atom 1.0

© 2004-2018 by Georg Kainzbauer