.\" -*- coding: UTF-8 -*- '\" t .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH BOOTUP 7 "" "systemd 239" bootup .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH BEZEICHNUNG bootup \- Systemstartprozess .SH BESCHREIBUNG .PP Beim Systemstart sind eine Reihe von verschiedenen Komponenten beteiligt\&. Direkt nach dem Start führt das BIOS eine minimale Hardware\-Initialisierung durch und übergibt die Steuerung an einen Boot\-Lader auf einem dauerhaften Speichergerät\&. Dieser Boot\-Lader wird dann einen Betriebssystemkernel von Platte (oder über das Netz) aufrufen\&. Im Falle von Linux extrahiert dieser Kernel (optional) eine anfängliche RAM\-Platte (Initrd), wie diese beispielsweise von \fBdracut\fP(8) generiert wurde, und führt diese aus. Diese sucht dann nach dem Wurzeldateisystem (möglicherweise unter Verwendung von \fBsystemd\fP(1))\&. Nachdem das Wurzeldateisystem gefunden und eingehängt wurde, übergibt die Initrd die Steuerung an den Systemverwalter des Rechners (wie \fBsystemd\fP(1)), der im Betriebssystem\-Image gespeichert ist, der dann für die Untersuchung aller verbleibenden Hardware, dem Einhängen aller notwendigen Dateisysteme und dem Erzeugen aller konfigurierten Dienste verantwortlich ist\&. .PP Beim Herunterfahren beendet der Systemverwalter alle Dienste, hängt alle Dateisysteme aus (trennt alle hinterlegten Speichertechniken ab) und springt dann (optional) zurück in den Initrd\-Code, der das Wurzeldateisystem und den Speicher, auf dem es liegt, aushängt und abtrennt\&. Als letzten Schritt wird das System ausgeschaltet\&. .PP Zusätzliche Informatioen über den Systemstartprozess können in \fBboot\fP(7) gefunden werden\&. .SH SYSTEMVERWALTERSTART .PP Beim Systemstart ist der Systemverwalter im Betriebssystem\-Image für die Initialisierung der benötigten Dateisysteme, Dienste und Treiber verantwortlich, die für den Betrieb des Systems notwendig sind\&. Auf \fBsystemd\fP(1)\-Systemen ist dieser Vorgang in verschiedene diskrete Schritte aufgeteilt, die als Target\-Units offengelegt sind\&. (Siehe \fBsystemd.target\fP(5) für detaillierte Informationen über Target\-Units\&.) Der Systemstartvorgang ist in hohem Maße parallelisiert, so dass die Reihenfolge, in der bestimmte Target\-Units erreicht werden, nicht deterministisch ist, aber dennoch in einem begrenzten Umfang einer Ordnungsstruktur folgt\&. .PP Wenn Systemd das System hochfährt, wird es standardmäßig alle Units aktivieren, die Abhängigkeiten von default\&.target sind (sowie rekursiv alle Abhängigkeiten dieser Abhängigkeiten)\&. Normalerweise ist default\&.target einfach ein Alias von graphical\&.target oder multi\-user\&.target, abhängig davon, ob das Ssytem für eine graphische Benutzerschnittstelle oder nur für eine Textkonsole konfiguriert ist\&. Um eine minimale Ordnung zwischen den hereingezogenen Units zu erzwingen, sind eine Reihe von gut bekannten Target\-Units verfügbar, wie in \fBsystemd.special\fP(7) aufgeführt\&. .PP Das nachfolgende Diagramm gibt einen strukturellen Überblick über diese gut bekannten Units und ihre Position in der Systemstartlogik\&. Die Pfeile beschreiben, welche Units hereingezogen und vor welchen anderen Units sortiert werden\&. Units im oberen Bereich werden vor Units im unteren Bereich des Diagramms gestartet\&. .sp .if n \{\ .RS 4 .\} .nf local\-fs\-pre\&.target | v (verschiedene Einhänge\- (verschiedene Swap\- (verschiedene Cryptsetup\- und fsck\-Dienste…) Geräte…) Geräte…) (verschiedene systemnahe (verschiedene systemnahe | | | Dienste: Udevd,Tmpfiles API\-VFS\-Einhängungen: v v v Zufallszahlenstartwerte, Mqueue, Configfs, local\-fs\&.target swap\&.target cryptsetup\&.target Sysctl, …) Debugfs, …) | | | | | \e_________________________|_______________________ | _____________________|______________________/ \e|/ v sysinit\&.target | ____________________________________/|\e________________________________________ / | | | \e | | | | | v v | v v (verschiedene (verschiedene | (verschiedene rescue\&.service Zeitgeber…) Pfade…) | Sockets…) | | | | | v v v | v \fIrescue\&.target\fP timers\&.target paths\&.target | sockets\&.target | | | | v \e_________________ | ___________________/ \e|/ v basic\&.target | ____________________________________/| emergency\&.service / | | | | | | v v v v \fIemergency\&.target\fP display\- (verschiedene (verschiedene manager\&.service Systemdienste Systemdienste) | benötigt für | | graphische Oberflächen) v | | \fImulti\-user\&.target\fP | | | \e_________________ | _________________/ \e|/ v \fIgraphical\&.target\fP .fi .if n \{\ .RE .\} .PP Target\-Units, die typischerweise als Systemstart\-Tagets verwandt werden, sind \fIhervorgehoben\fP\&. Diese Units sind eine gute Wahl für Ziel\-Targets, beispielsweise, indem sie an die Befehlszeilenoption \fIsystemd\&.unit=\fP des Kernels übergeben werden (siehe \fBsystemd\fP(1)) oder indem default\&.target auf sie verlinkt wird\&. .PP timers\&.target wird asynchron von basic\&.target hereingezogen\&. Dies ermöglicht es Zeitgeber\-Units, von Diensten, die erst später beim Systemstart verfügbar werden, abzuhängen\&. .SH "HOCHFAHREN IN DIE ANFÄNGLICHE RAM\-PLATTE (INITRD)" .PP Die Implementierung der anfänglichen RAM\-Platte (Initrd) kann auch mit Systemd eingerichtet werden\&. In diesem Fall folgt der Systemstart innerhalb der Initrd der folgenden Struktur: .PP Das Vorgabe\-Target in der Initrd ist initrd\&.target\&. Der Systemstartprozess beginnt identisch zum Systemverwalterstart (siehe oben), bis er basic\&.target erreicht\&. Von hier geht Systemd auf das besondere Target initrd\&.target\&. Bevor irgendwelche Dateisysteme eingehängt werden, muss bestimmt werden, ob das System aus dem Ruhezustand zurückkehrt oder ob mit dem normalen Systemstart fortgefahren werden soll\&. Dies wird durch systemd\-hibernate\-resume@\&.service erreicht, der vor dem local\-fs\-pre\&.target fertig werden muss, so das keine Dateisystem eingehängt werden können, bevor die Prüfung abgeschlossen ist\&. Wenn das Wurzeldateisystem verfügbar wird, ist initd\-root\-device\&.target erreicht\&. Falls das Wurzelverzeichnis als /sysroot eingehängt werden kann, wird die Unit sysroot\&.mount aktiv und initrd\-root\-fs\&.target ist erreicht\&. Der Dienst initrd\-parse\-etc\&.service durchsucht /sysroot/etc/fstab nach einem möglichen Einhängepunkt für /usr und zusätzlichen Einträgen, die mit der Option \fIx\-initrd\&.mount\fP markiert sind\&. Alle gefundenen Einträge werden unter /sysroot eingehängt und initrd\-fs\&.target ist erreicht\&. Der Dienst initrd\-cleanup\&.service isoliert zu dem initrd\-switch\-root\&.target, in dem Aufräumdienste laufen können\&. Als allerletzten Schritt wird initrd\-switch\-root\&.service aktiviert, das dazu führt, dass das System seine Wurzel auf /sysroot umschaltet\&. .sp .if n \{\ .RS 4 .\} .nf : (Anfang identisch zu oben) : v basic\&.target | emergency\&.service ______________________/| | / | v | initrd\-root\-device\&.target \fIemergency\&.target\fP | | | v | sysroot\&.mount | | | v | initrd\-root\-fs\&.target | | | v v initrd\-parse\-etc\&.service (custom initrd | services\&.\&.\&.) v | (sysroot\-usr\&.mount und | verschiedene Einhängungen markiert | mit Fstab\-Option | x\-initrd\&.mount…) | | | v | initrd\-fs\&.target \e______________________ | \e| v initrd\&.target | v initrd\-cleanup\&.service isoliert zu initrd\-switch\-root\&.target | v ______________________/| / v | initrd\-udevadm\-cleanup\-db\&.service v | (angepasste Initrd\- | Dienste…) | \e______________________ | \e| v initrd\-switch\-root\&.target | v initrd\-switch\-root\&.service | v Übergang ins Hauptbetriebssystem .fi .if n \{\ .RE .\} .SH SYSTEMVERWALTERABSCHALTVORGANG .PP Der Abschaltvorgang mit Systemd besteht auch aus verschiedenen Target\-Units mit einiger minimaler Ordnungsstruktur: .sp .if n \{\ .RS 4 .\} .nf (conflicts with (conflicts with all system all file system services) mounts, swaps, | cryptsetup | devices, \&.\&.\&.) | | v v shutdown\&.target umount\&.target | | \e_______ ______/ \e / v (various low\-level services) | v final\&.target | _____________________________________/ \e_________________________________ / | | \e | | | | v v v v systemd\-reboot\&.service systemd\-poweroff\&.service systemd\-halt\&.service systemd\-kexec\&.service | | | | v v v v \fIreboot\&.target\fP \fIpoweroff\&.target\fP \fIhalt\&.target\fP \fIkexec\&.target\fP .fi .if n \{\ .RE .\} .PP Häufig verwandte Ziele beim Herunterfahren des Systems sind \fIhervorgehoben\fP\&. .PP Beachten Sie, dass \fBsystemd\-halt.service\fP(8), systemd\-reboot\&.service, systemd\-poweroff\&.service und systemd\-kexec\&.service das System und den Diensteverwalter (PID 1) in die zweite Phase des Systemherunterfahrens überleiten (was im Programm systemd\-shutdown implementiert ist)\&. Dieser wird in einer einfachen und robusten Weise alle verbleibenden Dateisysteme aushängen, alle verbleibenden Prozesse töten und alle verbleibenden Ressourcen freigeben, ohne das Dienste\- oder Unit\-Konzept noch in Betracht zu ziehen\&. Zu diesem Zeitpunkt sind gewöhnliche Anwendungen und Ressourcen im Allgemeinen bereits beendet und freigegeben, die zweite Phase agiert daher nur als Sicherheitsnetz für alles, das aus irgendeinem Grund nicht während des oben beschriebenen, primären, Unit\-basierten Herunterfahrens beendet oder freigegeben werden konnte\&. .SH "SIEHE AUCH" .PP \fBsystemd\fP(1), \fBboot\fP(7), \fBsystemd.special\fP(7), \fBsystemd.target\fP(5), \fBsystemd\-halt.service\fP(8), \fBdracut\fP(8) .SH ÜBERSETZUNG Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann erstellt. Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen. Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an .