B.4. Inhalt der Voreinstellungsdatei (für Buster)

Die Konfigurationsfragmente aus diesem Abschnitt sind auch als Beispiel in Form einer Voreinstellungsdatei unter https://www.debian.org/releases/buster/example-preseed.txt verfügbar.

Beachten Sie, dass dieses Beispiel auf einer Installation für die Intel x86-Architektur basiert. Wenn Sie auf einer anderen Architektur installieren, könnten einige der Beispiele (wie die Tastaturauswahl und die Bootloader-Installation) nicht relevant sein und müssen durch für Ihre Architektur passende debconf-Einstellungen ersetzt werden.

Details darüber, wie die verschiedenen Debian-Installer-Komponenten funktionieren, finden Sie in Abschnitt 6.3, „Die einzelnen Komponenten“.

B.4.1. Lokalisierung

Bei einer normalen Installation sind die Fragen, die als allererstes gestellt werden, die über die Lokalisierung, daher können diese Werte nur über initrd oder Kernel-Befehlszeile voreingestellt werden. Die Installation im Auto-Modus (Abschnitt B.2.3, „Auto-Modus“) enthält die Einstellung auto-install/enable=true (normalerweise über den Alias auto). Diese verzögert die Fragen zur Lokalisierung, so dass diese dann über jegliche Methode voreingestellt werden können.

Das Gebietsschema (Locale) kann verwendet werden, um sowohl Sprache als auch Land anzugeben. Es kann jede Kombination aus einer vom debian-installer unterstützten Sprache und einem anerkannten Land (jeweils als Kürzel) enthalten. Falls die angegebene Kombination kein gültiges Gebietsschema bildet, wählt der Installer automatisch ein Gebietsschema, das für die gewählte Sprache passend ist. Um das Gebietsschema als Boot-Parameter festzulegen, nutzen Sie locale=de_DE (Beispiel de_DE: deutsch - Deutschland).

Obwohl diese Methode sehr einfach zu nutzen ist, erlaubt sie nicht das Voreinstellen aller möglichen Kombinationen aus Sprache, Land und Gebietsschema[19]. Daher können diese Werte auch individuell voreingestellt werden. Sprache und Land können auch als Boot-Parameter angegeben werden.

# Das Voreinstellen des Gebietsschemas (Locale) setzt gleichzeitig Sprache,
# Land und Standard-Gebietsschema:
d-i debian-installer/locale string de_DE

# Die Werte können auch individuell voreingestellt werden, um flexibler
# zu sein:
#d-i debian-installer/language string en
#d-i debian-installer/country string NL
#d-i debian-installer/locale string en_GB.UTF-8
# Geben Sie optional zusätzliche Gebietsschemata an, die generiert werden
# sollen:
#d-i localechooser/supported-locales multiselect en_US.UTF-8, nl_NL.UTF-8

Die Tastaturkonfiguration besteht aus der Auswahl der Tastaturbelegung und (bei nicht-lateinischen Tastaturbelegungen) einer Umschalttaste, um zwischen der nicht-lateinischen und der US-Tastaturbelegung hin- und herschalten zu können. Während der Installation sind nur grundlegende Tastaturbelegungsvarianten verfügbar. Erweiterte Varianten sind später im installierten System nutzbar, verwenden Sie dpkg-reconfigure keyboard-configuration.

# Auswahl der Tastatur:
d-i keyboard-configuration/xkb-keymap select de
# Keine Umschalttaste:
# d-i keyboard-configuration/toggle select No toggling

Um die Konfiguration der Tastatur zu überspringen, stellen Sie für keymap den Wert skip-config ein. Dies bewirkt, dass die Tastaturbelegung des Kernels weiter verwendet wird.

B.4.2. Netzwerkkonfiguration

Die Voreinstellung der Netzwerkkonfiguration funktioniert natürlich nicht, wenn Sie Ihre Voreinstellungsdatei vom Netzwerk laden, aber es ist toll, wenn Sie von CD oder USB-Stick booten. Sie können jedoch auch Netzwerkkonfigurations-Parameter automatisieren, wenn Sie die Voreinstellungsdatei per Netzwerk laden, und zwar per Kernel-Parameter.

Falls Sie beim Booten per Netzwerk eine bestimmte Netzwerkschnittstelle auswählen müssen, bevor eine Voreinstellungsdatei vom Netzwerk geladen wurde, benutzen Sie einen Boot-Parameter wie interface=eth1.

Obwohl das Voreinstellen der Netzwerkkonfiguration normalerweise nicht möglich ist, wenn Sie Voreinstellung über Netzwerk benutzen (mittels preseed/url), können Sie den folgenden Hack verwenden, um diese Einschränkung zu umgehen, wenn Sie zum Beispiel eine statische Adresse für die Netzwerk-Schnittstelle setzen möchten. Der Hack erzwingt, dass die Netzwerkkonfiguration erneut abläuft, nachdem die Voreinstellungsdatei geladen wurde. Dazu wird ein preseed/run-Script erzeugt mit den folgenden Befehlen:

kill-all-dhcp; netcfg

Die folgenden debconf-Variablen sind für die Netzwerkkonfiguration relevant:

# Die Netzwerkkonfiguration vollständig überspringen. Dies ist für CD-ROM-
# Installationen auf Rechnern ohne Netzwerk-Hardware nützlich, wo die Fragen
# über das Netzwerk, die Warnungen und das lange Warten auf die Zeitüber-
# schreitungen sehr lästig wären:
#d-i netcfg/enable boolean false

# netcfg versucht nach Möglichkeit, eine Netzwerkschnittstelle zu wählen,
# die bereits Verbindung hat (Netzwerkkabel gesteckt, aktive Gegenstelle). 
# Diese Zeile vermeidet, dass eine Liste angezeigt wird, wenn mehr als
# eine Schnittstelle verfügbar ist:
d-i netcfg/choose_interface select auto

# Um stattdessen eine bestimmte Schnittstelle vorzugeben:
#d-i netcfg/choose_interface select eth1

# Um eine andere Timeout-Zeit für die Verbindungserkennung festzulegen
# (Standard ist 3 Sekunden); Werte werden als Sekunden interpretiert:
#d-i netcfg/link_wait_timeout string 10

# Wenn Sie einen langsamen DHCP-Server haben und der Installer läuft in eine
# Zeitüberschreitung, während er auf ihn wartet, könnte dies nützlich sein:
#d-i netcfg/dhcp_timeout string 60
#d-i netcfg/dhcpv6_timeout string 60

# Wenn Sie es vorziehen, das Netzwerk manuell zu konfigurieren, entfernen
# Sie hier das Kommentarzeichen und ebenso bei den Zeilen für die statische
# Netzwerkkonfiguration unten:
#d-i netcfg/disable_autoconfig boolean true

# Falls Sie möchten, dass die Voreinstellungsdatei sowohl auf Systemen mit
# DHCP-Server als auch ohne einen solchen funktioniert, entfernen Sie hier
# die Kommentarzeichen sowie auch unten bei der statischen
# Netzwerkkonfiguration:
#d-i netcfg/dhcp_failed note
#d-i netcfg/dhcp_options select Configure network manually

# Statische Netzwerkkonfiguration.
#
# IPv4-Beispiel:
#d-i netcfg/get_ipaddress string 192.168.1.42
#d-i netcfg/get_netmask string 255.255.255.0
#d-i netcfg/get_gateway string 192.168.1.1
#d-i netcfg/get_nameservers string 192.168.1.1
#d-i netcfg/confirm_static boolean true
#
# IPv6-Beispiel:
#d-i netcfg/get_ipaddress string fc00::2
#d-i netcfg/get_netmask string ffff:ffff:ffff:ffff::
#d-i netcfg/get_gateway string fc00::1
#d-i netcfg/get_nameservers string fc00::1
#d-i netcfg/confirm_static boolean true

# Bedenken Sie, dass jeder Rechner- und Domänenname, der per DHCP
# zugewiesen wird, Vorrang hat vor den hier angegebenen. Allerdings
# bewirken diese Zeilen, dass keine Fragen angezeigt werden, auch wenn
# Werte per DHCP empfangen werden:
d-i netcfg/get_hostname string unassigned-hostname
d-i netcfg/get_domain string unassigned-domain

# Wenn Sie einen Rechnernamen erzwingen möchten, unabhängig davon, was der
# DHCP-Server zurückgibt oder wie der Reverse-DNS-Eintrag für die IP-Adresse
# lautet, entfernen Sie bei der folgenden Zeile das Kommentarzeichen und
# passen Sie sie an:
#d-i netcfg/hostname string somehost

# Den lästigen WEP-Schlüssel-Dialog unterdrücken:
d-i netcfg/wireless_wep string
# Der verrückte DHCP-Rechnername, den einige ISP als eine Art Passwort nutzen:
#d-i netcfg/dhcp_hostname string radish

# Falls nicht-freie Firmware benötigt wird für Netzwerk- oder andere
# Hardware, können Sie den Installer so konfigurieren, dass immer versucht
# wird, die Firmware zu laden, ohne Nachfrage (true). Oder Sie ändern dies
# auf false, wenn überhaupt nicht danach gefragt werden soll:
#d-i hw-detect/load_firmware boolean true

Bitte beachten Sie, dass netcfg die Netzmaske automatisch ermittelt, falls netcfg/get_netmask nicht voreingestellt ist. In diesem Fall muss die Variable für automatische Installationen als seen markiert werden. Ähnlich dazu wird netcfg auch eine geeignete Gateway-Adresse wählen, falls netcfg/get_gateway nicht voreingestellt wird. Es gibt die spezielle Möglichkeit, netcfg/get_gateway auf none zu setzen, um festzulegen, dass kein Gateway benutzt werden soll.

B.4.3. Netzwerk-Konsole

# Nutzen Sie die folgenden Einstellungen, wenn Sie die Komponente "Netzwerk-
# Konsole" für eine entfernte Installation per SSH verwenden möchten. Dies
# macht nur Sinn, wenn Sie vorhaben, den verbleibenden Rest der Installation
# manuell durchzuführen:
#d-i anna/choose_modules string network-console
#d-i network-console/authorized_keys_url string http://10.0.0.1/openssh-key
#d-i network-console/password password r00tme
#d-i network-console/password-again password r00tme

B.4.4. Einstellungen für den Spiegel-Server

Abhängig von der Installationsmethode, die Sie verwenden, kann ein Spiegel-Server sowohl dazu genutzt werden, zusätzliche Komponenten des Installers und das Basissystem herunterzuladen als auch um die /etc/apt/sources.list für das zu installierende System einzurichten.

Der Parameter mirror/suite beeinflusst die Paketquellen für das zu installierende System.

Der Parameter mirror/udeb/suite beeinflusst die Paketquellen für den Installer. Es ist nur nützlich, dies einzustellen, wenn aktuell Komponenten des Installers über das Netzwerk geladen werden; dieser Wert sollte mit dem übereinstimmen, der genutzt wurde, um die initrd, die Sie für Ihre Installationsmethode nutzen, zu bauen. Normalerweise wird der Installer automatisch den korrekten Wert verwenden und es sollte daher keinen Grund geben, dies manuell festzulegen.

# Wenn Sie FTP wählen, muss mirror/country nicht gesetzt werden:
#d-i mirror/protocol string ftp
d-i mirror/country string manual
d-i mirror/http/hostname string ftp2.de.debian.org
d-i mirror/http/directory string /debian
d-i mirror/http/proxy string

# Distributionszweig von Debian, den Sie installieren möchten:
#d-i mirror/suite string testing
# Distributionszweig, der genutzt wird, um Installer-Komponenten zu
# laden (optional):
#d-i mirror/udeb/suite string testing

B.4.5. Einrichtung von Benutzerzugängen

Das Passwort für den Superuser-Zugang (root) sowie Name und Passwort des ersten regulären Benutzers können voreingestellt werden. Für die Passwörter können Sie entweder Klartext-Werte oder crypt(3)-Hashes verwenden.

[Warnung] Warnung

Bedenken Sie, dass die Voreinstellung von Passwörtern nicht ganz sicher ist, da jeder, der Zugang zur Voreinstellungsdatei hat, Kenntnis von den Passwörtern erlangen könnte. Hier verschlüsselte Hashes für die Passwörter zu verwenden, wird als sicher angesehen, solange keine schwachen Algorithmen wie DES oder MD5 zum Einsatz kommen, da diese die Gefahr von Brute-Force-Attacken bergen. Es wird empfohlen, SHA-256 oder SHA512 zu benutzen.

# Das Anlegen des Root-Zugangs abbrechen (der normale Benutzer
# bekommt dann die Möglichkeit, sudo zu benutzen):
#d-i passwd/root-login boolean false
# Alternativ dazu können Sie auch das Anlegen eines normalen
# Benutzers abbrechen:
#d-i passwd/make-user boolean false

# Root-Passwort, entweder als Klartext ... :
#d-i passwd/root-password password r00tme
#d-i passwd/root-password-again password r00tme
# ... oder verschlüsselt als crypt(3)-Hash:
#d-i passwd/root-password-crypted password [crypt(3)-Hash]

# Um einen regulären Benutzerzugang zu erstellen:
#d-i passwd/user-fullname string Max Mustermann
#d-i passwd/username string max
# Passwort des regulären Benutzers, entweder als Klartext ... :
#d-i passwd/user-password password insecure
#d-i passwd/user-password-again password insecure
# ... oder verschlüsselt als crypt(3)-Hash:
#d-i passwd/user-password-crypted password [crypt(3)-Hash]
# Den ersten Benutzer mit der angegebenen Benutzer-ID (UID) erstellen
# statt mit der Standard-UID:
#d-i passwd/user-uid string 1010

# Der Benutzerzugang wird zu einigen Standard-Benutzergruppen hinzugefügt.
# Um dies zu überschreiben, benutzen Sie:
#d-i passwd/user-default-groups string audio cdrom video

Die Variablen passwd/root-password-crypted und passwd/user-password-crypted können auch mit ! als Wert voreingestellt werden. In diesem Fall wird der entsprechende Zugang deaktiviert. Dies könnte für den root-Zugang sinnvoll sein, vorausgesetzt natürlich, dass alternative Möglichkeiten vorhanden sind, um administrative Tätigkeiten oder root-Logins zu ermöglichen (z.B. per Authentifizierung mit SSH-Schlüssel oder per sudo).

Der folgende Befehl (aus dem Paket whois) kann verwendet werden, um einen SHA-512 basierten crypt(3)-Hash für ein Passwort zu generieren:

mkpasswd -m sha-512

B.4.6. Einrichtung von Uhr und Zeitzone

# Legt fest, ob die Hardware-(CMOS-)Uhr auf UTC eingestellt ist oder nicht:
d-i clock-setup/utc boolean true

# Sie können hier irgendeinen, für $TZ gültigen Wert eingeben; gültige
# Werte finden Sie in /usr/share/zoneinfo/:
d-i time/zone string Europe/Berlin

# Hier wird eingestellt, ob NTP benutzt wird, um während der Installation
# die Uhr zu stellen:
d-i clock-setup/ntp boolean true
# NTP-Server, der genutzt werden soll; der Standardwert sollte für die
# meisten Fälle passend sein:
#d-i clock-setup/ntp-server string ntp.example.com

B.4.7. Partitionierung

Die Möglichkeiten der Voreinstellung für die Partitionierung der Festplatte werden begrenzt durch das, was partman-auto unterstützt. Sie können wählen, entweder vorhandenen freien Platz auf der Platte zu partitionieren oder die komplette Platte. Das Layout der Disk kann durch ein vordefiniertes Rezept festgelegt werden, durch ein selbst erstelltes aus einer Rezeptdatei oder durch ein Rezept, das in der Vorkonfigurationsdatei enthalten ist.

Die Voreinstellung von fortgeschrittenen Partitionierungen unter Verwendung von RAID, LVM und Verschlüsselung ist möglich, jedoch nicht mit der vollständigen Flexibilität, die bei einer Installation ohne Voreinstellung möglich wäre.

Die Beispiele weiter unten bieten nur grundlegende Informationen über die Nutzung von Partitionierungsrezepten. Detailierte Informationen finden Sie in den Dateien partman-auto-recipe.txt und partman-auto-raid-recipe.txt, die in dem Paket debian-installer enthalten sind. Beide Dateien sind ebenfalls über das Quellcode-Repository des debian-installers verfügbar. Beachten Sie, dass die unterstützten Funktionalitäten abhängig von der Version variieren können.

[Warnung] Warnung

Die Erkennung der Festplatten hängt von der Reihenfolge ab, in der ihre Treiber geladen werden. Falls mehrere Platten im System existieren, achten Sie verstärkt darauf, dass Sie die richtige ausgewählt haben, bevor Sie die Voreinstellung nutzen.

B.4.7.1. Partitionierungsbeispiele

# If the system has free space you can choose to only partition that space.
# This is only honoured if partman-auto/method (below) is not set.
#d-i partman-auto/init_automatically_partition select biggest_free

# Alternatively, you may specify a disk to partition. If the system has only
# one disk the installer will default to using that, but otherwise the device
# name must be given in traditional, non-devfs format (so e.g. /dev/sda
# and not e.g. /dev/discs/disc0/disc).
# For example, to use the first SCSI/SATA hard disk:
#d-i partman-auto/disk string /dev/sda
# In addition, you'll need to specify the method to use.
# The presently available methods are:
# - regular: use the usual partition types for your architecture
# - lvm:     use LVM to partition the disk
# - crypto:  use LVM within an encrypted partition
d-i partman-auto/method string lvm

# You can define the amount of space that will be used for the LVM volume
# group. It can either be a size with its unit (eg. 20 GB), a percentage of
# free space or the 'max' keyword.
d-i partman-auto-lvm/guided_size string max

# If one of the disks that are going to be automatically partitioned
# contains an old LVM configuration, the user will normally receive a
# warning. This can be preseeded away...
d-i partman-lvm/device_remove_lvm boolean true
# The same applies to pre-existing software RAID array:
d-i partman-md/device_remove_md boolean true
# And the same goes for the confirmation to write the lvm partitions.
d-i partman-lvm/confirm boolean true
d-i partman-lvm/confirm_nooverwrite boolean true

# You can choose one of the three predefined partitioning recipes:
# - atomic: all files in one partition
# - home:   separate /home partition
# - multi:  separate /home, /var, and /tmp partitions
d-i partman-auto/choose_recipe select atomic

# Or provide a recipe of your own...
# If you have a way to get a recipe file into the d-i environment, you can
# just point at it.
#d-i partman-auto/expert_recipe_file string /hd-media/recipe

# If not, you can put an entire recipe into the preconfiguration file in one
# (logical) line. This example creates a small /boot partition, suitable
# swap, and uses the rest of the space for the root partition:
#d-i partman-auto/expert_recipe string                         \
#      boot-root ::                                            \
#              40 50 100 ext3                                  \
#                      $primary{ } $bootable{ }                \
#                      method{ format } format{ }              \
#                      use_filesystem{ } filesystem{ ext3 }    \
#                      mountpoint{ /boot }                     \
#              .                                               \
#              500 10000 1000000000 ext3                       \
#                      method{ format } format{ }              \
#                      use_filesystem{ } filesystem{ ext3 }    \
#                      mountpoint{ / }                         \
#              .                                               \
#              64 512 300% linux-swap                          \
#                      method{ swap } format{ }                \
#              .

# The full recipe format is documented in the file partman-auto-recipe.txt
# included in the 'debian-installer' package or available from D-I source
# repository. This also documents how to specify settings such as file
# system labels, volume group names and which physical devices to include
# in a volume group.

# This makes partman automatically partition without confirmation, provided
# that you told it what to do using one of the methods above.
d-i partman-partitioning/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true
d-i partman/confirm_nooverwrite boolean true

# When disk encryption is enabled, skip wiping the partitions beforehand.
#d-i partman-auto-crypto/erase_disks boolean false

B.4.7.2. Partitionierung mit RAID

Sie können auch Voreinstellung verwenden, um Partitionen auf einem Software-RAID einzurichten. Es werden RAID-Level 0, 1, 5, 6 und 10 unterstützt sowie die Einrichtung von degradierten Arrays und die Festlegung von Reserveplatten.

[Warnung] Warnung

Bei dieser Art von automatisierter Partitionierung kann leicht etwas falsch laufen. Auch ist diese Installer-Komponente von den Entwicklern des debian-installer relativ wenig getestet worden. Die Verantwortung, die verschiedenen Rezepte richtig hinzubekommen (so dass sie Sinn machen und nicht miteinander kollidieren), liegt beim Benutzer! Schauen Sie in /var/log/syslog nach, wenn Probleme auftreten.

# Die Partitionierungsmethode sollte auf "raid" gesetzt werden:
#d-i partman-auto/method string raid
# Geben Sie die Festplatten an, die partitioniert werden sollen. Sie bekommen
# alle das gleiche Layout, dies wird also nur funktionieren, wenn alle
# Festplatten die gleiche Größe haben:
#d-i partman-auto/disk string /dev/sda /dev/sdb

# Als nächstes müssen Sie die zu nutzenden physikalischen Partitionen
# einrichten:
#d-i partman-auto/expert_recipe string \
#      multiraid ::                                         \
#              1000 5000 4000 raid                          \
#                      $primary{ } method{ raid }           \
#              .                                            \
#              64 512 300% raid                             \
#                      method{ raid }                       \
#              .                                            \
#              500 10000 1000000000 raid                    \
#                      method{ raid }                       \
#              .

# Als letztes muss noch angegeben werden, wie die vorher definierten Partitionen
# im RAID-Setup verwendet werden sollen. Denken Sie daran, die korrekten
# Partitionsnummern für die logischen Partitionen zu benutzen. Es werden die
# RAID-Level 0, 1, 5, 6 und 10 unterstützt; Geräte werden mittels »#« voneinander
# getrennt.
# Parameter sind:
# <raidtype> <devcount> <sparecount> <fstype> <mountpoint> \
#          <devices> <sparedevices>
# 
#d-i partman-auto-raid/recipe string \
#    1 2 0 ext3 /                    \
#          /dev/sda1#/dev/sdb1       \
#    .                               \
#    1 2 0 swap -                    \
#          /dev/sda5#/dev/sdb5       \
#    .                               \
#    0 2 0 ext3 /home                \
#          /dev/sda6#/dev/sdb6       \
#    .

# Weitere Informationen finden Sie in der Datei partman-auto-raid-recipe.txt,
# die im Paket »debian-installer« enthalten oder im D-I-Quellcode-Repository
# verfügbar ist.

# Dies veranlasst partman, automatisch ohne Nachfrage zu partitionieren:
d-i partman-md/confirm boolean true
d-i partman-partitioning/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true
d-i partman/confirm_nooverwrite boolean true

B.4.7.3. Festlegen, wie Partitionen eingebunden werden

Normalerweise werden Dateisysteme unter Verwendung einer eindeutigen Kennung, dem Universally Unique Identifier (UUID) als Schlüssel eingebunden; auf diesem Wege ist es möglich, sie korrekt einzubinden, selbst wenn sich ihr Gerätename ändert. UUIDs sind allerdings lang und schwierig zu lesen, daher kann der Installer die Dateisysteme, falls Sie dies bevorzugen, auch basierend auf den traditionellen Gerätenamen einbinden oder aber basierend auf einem Label, das sie festlegen. Wenn Sie den Installer anweisen, die Einbindung über ein Label vorzunehmen, wird für alle Dateisysteme, die kein Label haben, trotzdem der UUID verwendet.

Für Geräte mit feststehenden Namen, wie zum Beispiel logischen LVM-Volumes, werden weiterhin die traditionellen Namen statt der UUIDs verwendet.

[Warnung] Warnung

Die traditionellen Gerätenamen können sich basierend auf der Reihenfolge, in der der Kernel die Geräte beim Booten erkennt, ändern, was dazu führen kann, dass das falsche Dateisystem eingebunden wird. Ähnlich dazu können bei den Labels Überschneidungen auftreten, wenn Sie eine neue Festplatte oder ein USB-Laufwerk anschließen, und wenn dies passiert, ist das Verhalten Ihres Systems beim Starten rein willkürlich.

# Standardeinstellung ist, mittels UUID einzubinden, Sie können aber auch
# "traditional" wählen, um die traditionellen Gerätenamen zu nutzen, oder
# "label", um die Einbindung per Dabeisystem-Label zu versuchen, wobei im
# Falle eines Fehlers hier die UUIDs als Ausweichlösung verwendet werden.
#d-i partman/mount_style select uuid

B.4.8. Installation des Basissystems

Es gibt momentan nicht viel, was für diesen Teil der Installation voreingestellt werden kann. Die einzigen gestellten Fragen betreffen die Installation des Kernels.

# APT konfigurieren, dass empfohlene (recommended) Pakete nicht automatisch
# installiert werden. Die Verwendung dieser Option kann zu einem
# unvollständigen System führen und sollte nur von sehr erfahrenen
# Anwendern genutzt werden:
#d-i base-installer/install-recommends boolean false

# Das Kernel-Image-(Meta-)Paket, das installiert werden soll; "none" kann
# genutzt werden, wenn kein Kernel installiert werden soll:
#d-i base-installer/kernel/image string linux-image-686

B.4.9. Konfiguration von Apt

Die Konfiguration von /etc/apt/sources.list und grundlegenden Einstellungsoptionen ist voll automatisiert, basierend auf der Installationsmethode und Antworten auf frühere Fragen. Sie können optional weitere (lokale) Paketquellen (Repositories) hinzufügen.

# Sie können wählen, ob Sie Software aus dem "non-free"- oder
# "contrib"-Zweig installieren möchten:
#d-i apt-setup/non-free boolean true
#d-i apt-setup/contrib boolean true
# Entfernen Sie das folgende Kommentarzeichen, wenn Sie keinen Netzwerk-
# Spiegel-Server verwenden möchten:
#d-i apt-setup/use_mirror boolean false
# Wählen Sie, welche Update-Dienste genutzt werden sollen; legen Sie die
# zu verwendenden Spiegel-Server fest. Die hier angegebenen Werte sind die
# normalen Standardwerte:
#d-i apt-setup/services-select multiselect security, updates
#d-i apt-setup/security_host string security.debian.org

# Zusätzliche Paketquellen, "local[0-9]" verfügbar:
#d-i apt-setup/local0/repository string \
#       http://local.server/debian stable main
#d-i apt-setup/local0/comment string local server
# deb-src-Zeilen aktivieren:
#d-i apt-setup/local0/source boolean true
# URL zum öffentlichen Schlüssel der lokalen Quelle; Sie müssen einen
# Schlüssel bereitstellen, oder apt wird sich über die nicht-autorisierte
# Quelle beschweren und die Zeile in der sources.list wird auskommentiert
# bleiben und nicht genutzt:
#d-i apt-setup/local0/key string http://local.server/key

# Standardmäßig verlangt der Installer, dass Paketquellen mittels
# bekannter GPG-Schlüssel autorisiert werden. Folgendes kann verwendet
# werden, um das zu deaktivieren. WARNUNG: unsicher, nicht empfohlen.
#d-i debian-installer/allow_unauthenticated boolean true

# Entfernen Sie hier das Kommentarzeichen, um multiarch-Konfiguration
# für i386 hinzuzufügen:
#d-i apt-setup/multiarch string i386

B.4.10. Paketauswahl

Sie können jede Kombination der verfügbaren Programmgruppen auswählen. Mögliche Werte zum Zeitpunkt, als dies geschrieben wurde:

  • standard (Standard-Programme)

  • desktop (grafische Arbeitsplatz-Umgebung / Standardauswahl)

  • gnome-desktop (Gnome-Arbeitsplatz-Umgebung)

  • xfce-desktop (XFCE-Arbeitsplatz-Umgebung)

  • kde-desktop (KDE-Plasma Arbeitsplatz-Umgebung)

  • cinnamon-desktop (Cinnamon-Arbeitsplatz-Umgebung)

  • mate-desktop (MATE-Arbeitsplatz-Umgebung)

  • lxde-desktop (LXDE-Arbeitsplatz-Umgebung)

  • web-server (Web-Server)

  • print-server (Print-Server)

  • ssh-server (SSH-Server)

Sie können hier auch wählen, gar nichts zu installieren und die Installation von bestimmten Paketen auf andere Art erzwingen. Wir empfehlen aber, immer zumindest die Programmgruppe standard auszuwählen.

Wenn Sie zusätzlich zu den Paketen, die durch die Programmgruppen installiert werden, weitere benötigen, können Sie den Parameter pkgsel/include benutzen. Der Wert für diesen Parameter kann eine Liste von Paketen sein, getrennt entweder durch Kommas oder durch Leerzeichen, so dass Sie ihn auch recht einfach auf der Kernel-Kommandozeile verwenden können.

#tasksel tasksel/first multiselect standard, web-server, kde-desktop

# Individuelle zusätzliche Pakete, die installiert werden sollen:
#d-i pkgsel/include string openssh-server build-essential
# Ob Pakete aktualisiert werden sollen, nachdem debootstrap beendet ist.
# Gültige Werte: none, safe-upgrade, full-upgrade
#d-i pkgsel/upgrade select none

# Einige Versionen des Installers können Informationen an das Debian-
# Projekt zurück senden, welche Pakete Sie installiert haben.
# Standardeinstellung ist, nichts zu senden, aber Informationen zu senden
# hilft dem Projekt zu entscheiden, welche Software wie beliebt ist und ob
# bzw. wo sie auf die CDs gepackt werden sollte:
#popularity-contest popularity-contest/participate boolean false

B.4.11. Die Installation beenden

# Bei Installationen über die serielle Konsole werden die regulären virtuellen
# Konsolen (VT1 - VT6) normalerweise in /etc/inittab deaktivert. Um dies zu
# vermeiden, entfernen Sie vor der nächsten Zeile das Kommentarzeichen:
#d-i finish-install/keep-consoles boolean true

# Die letzte Meldung "Installation abgeschlossen" unterdrücken:
d-i finish-install/reboot_in_progress note

# Dies verhindert, dass der Installer während des Neustarts die CD
# auswirft, was in einigen Situationen sinnvoll sein könnte:
#d-i cdrom-detect/eject boolean false

# Durch die folgende Zeile wird der Installer nach Abschluss der
# Installation nur heruntergefahren, kein Neustart, es wird nicht das neue
# System gestartet:
#d-i debian-installer/exit/halt boolean true
# Durch die nächste Zeile wird der Rechner komplett abgeschaltet statt
# nur gestoppt:
#d-i debian-installer/exit/poweroff boolean true

B.4.12. Voreinstellung anderer Pakete

# Abhängig davon, welche Software Sie zur Installation auswählen oder ob
# Dinge während des Installationsprozesses schief laufen, ist es möglich,
# dass andere Fragen auftauchen. Sie können auch für diese natürlich
# Voreinstellungen festlegen. Eine Liste mit allen möglichen Fragen, die
# gestellt werden könnten, bekommen Sie, indem Sie eine Installation
# durchführen und danach diese Befehle ausführen:
#   debconf-get-selections --installer > file
#   debconf-get-selections >> file


[19] Wenn zum Beispiel locale auf en_NL voreingestellt wird, würde dies zu dem Standard-Gebietsschema en_US.UTF-8 auf dem installierten System führen. Wenn aber stattdessen en_GB.UTF-8 bevorzugt wird, müssen diese Werte individuell voreingestellt werden.