systemd-gpt-auto-generator ist ein Unit-Generator, der die
Partitionen der Wurzel, /home/, /srv/, /var/, /var/tmp/, die
EFI-Systempartition, des »Extended Boot Loader« und Swap
automatisch erkennt und Einhänge- und Swap-Units für diese,
basierend auf den Partitionstyp-GUIDS von GUID-Partitionstabellen (GPT),
erstellt. Siehe UEFI-Spezifikation[1], Kapitel 5 für weitere
Details. Es implementiert die Spezifikation für auffindbare
Partitionen[2].
Beachten Sie, dass dieser Generator nur auf GPT-Systemen wirksam
wird. Er wird keine Einhängepunktkonfigurationen für
Verzeichnisse erstellen, die bereits Dateien enthalten oder falls der
Einhängepunkt explizit in fstab(5) konfiguriert ist. Falls die
von diesem Generator erstellten Units außer Kraft gesetzt werden,
beispielsweise durch Units mit höherem Vorrang, können von
diesem Generator erstellte Ergänzungen und zusätzliche
Abhängigkeiten weiterhin verwandt werden.
Dieser Generator wird nur nach Wurzelpartitionen auf der gleichen
physischen Platte, auf der sich auch die EFI-Systempartition (ESP) befindet,
suchen. Beachten Sie, dass Unterstützung durch das
Systemstartprogramm benötigt wird: die EFI-Variable
LoaderDevicePartUUID der Lieferanten-UUID
4a67b082-0a4c-41cf-b6c7-440b29bb8c4f wird verwandt, um zu bestimmen,
von welcher Partition und somit welcher Platte das System gestartet wurde.
Falls das Systemstartprogramm diese Variable nicht setzt, wird der Generator
nicht in der Lage sein, die Wurzelpartition zu erkennen. Siehe die
Boot-Loader-Schnittstelle[3] für Details.
Ähnlich wird dieser Generator nur nach den anderen
Partitionen auf der gleichen physischen Platte, auf der sich auch die
Wurzelpartition befindet, suchen. In diesem Fall wird die
Unterstützung durch das Systemstartprogramm nicht benötigt.
Diese Partitionen werden auf Systemen, bei denen sich das Wurzeldateisystem
über mehrere Platten, beispielsweise mittels btrfs-RAID, erstreckt,
nicht gesucht.
Systemd-gpt-auto-generator ist für die Zentralisierung der
Dateisystemkonfiguration in der Partitionstabelle nützlich und macht
Konfiguration in /etc/fstab oder auf der Kernelbefehlszeile
unnötig.
Dieser Generator sucht Partitionen basierend auf ihrer
Partitionstyp-GUID. Die nachfolgenden Partitionstyp-GUIDs werden
identifiziert:
Tabelle 1. Partitionstyp-GUIDs
| Partitionstyp-GUID |
Name |
Einhängepunkt |
Erklärung |
| SD_GPT_ROOT_X86_64
4f68bce3-e8cd-4db1-96e7-fbcaf984b709 |
Wurzelpartition (x86-64) |
/ |
Die erste Partition mit dieser Art UUID, auf der gleichen Platte wie der
ESP befindlich, wird als Wurzeldateisystem / auf AMD 64 /
64-bit-x86-Systemen verwandt. |
| SD_GPT_ROOT_ARM64
b921b045-1df0-41c3-af44-4c6f280d3fae |
Wurzelpartition (64-bit ARM) |
/ |
Die erste Partition mit dieser Art UUID, auf der gleichen Platte wie der
ESP befindlich, wird als Wurzeldateisystem / auf AArch64 /
64-bit-ARM-Systemen verwandt. |
| SD_GPT_ROOT_ALPHA SD_GPT_ROOT_ARC SD_GPT_ROOT_ARM
SD_GPT_ROOT_ARM64 SD_GPT_ROOT_IA64
SD_GPT_ROOT_LOONGARCH64 SD_GPT_ROOT_MIPS
SD_GPT_ROOT_MIPS64 SD_GPT_ROOT_MIPS_LE
SD_GPT_ROOT_MIPS64_LE SD_GPT_ROOT_PARISC
SD_GPT_ROOT_PPC SD_GPT_ROOT_PPC64
SD_GPT_ROOT_PPC64_LE SD_GPT_ROOT_RISCV32
SD_GPT_ROOT_RISCV64 SD_GPT_ROOT_S390
SD_GPT_ROOT_S390X SD_GPT_ROOT_TILEGX SD_GPT_ROOT_X86
SD_GPT_ROOT_X86_64 SD_GPT_USR_ALPHA SD_GPT_USR_ARC
SD_GPT_USR_ARM SD_GPT_USR_IA64 SD_GPT_USR_LOONGARCH64
SD_GPT_USR_MIPS_LE SD_GPT_USR_MIPS64_LE
SD_GPT_USR_PARISC SD_GPT_USR_PPC SD_GPT_USR_PPC64
SD_GPT_USR_PPC64_LE SD_GPT_USR_RISCV32
SD_GPT_USR_RISCV64 SD_GPT_USR_S390 SD_GPT_USR_S390X
SD_GPT_USR_TILEGX SD_GPT_USR_X86 |
Wurzelpartitionen für andere Architekturen |
/ |
Die erste Partition mit dieser Art von UUID, die auf die Architektur
passt und sich auf der gleichen Platte wie der ESP befindet, wird als
Wurzeldateisystem / verwandt. Sie finden eine vollständige Liste
und die Werte der Konstanten in der Spezifikation für
auffindbare Partitionen[2]. |
| SD_GPT_HOME 933ac7e1-2eb4-4f13-b844-0e14e2aef915 |
Home-Partition |
/home/ |
Die erste Partition mit dieser Art von UUID auf der gleichen Platte wie
der ESP wird als /home/ eingehängt. |
| SD_GPT_SRV 3b8f8425-20e0-4f3b-907f-1a25a76f98e8 |
Server-Datenpartition |
/srv/ |
Die erste Partition mit dieser Art von UUID auf der gleichen Platte wie
der ESP wird als /srv/ eingehängt. |
| SD_GPT_VAR 4d21b016-b534-45c2-a9fb-5c16e091fd2d |
Variable-Daten-Partition |
/var/ |
Die erste Partition mit dieser Art von UUID auf der gleichen Platte wie
der ESP wird als /var/ eingehängt – vorausgesetzt, seine
Partitions-UUID passt auf die ersten 128 bit des HMAC-SHA256 der
GPT-Typ-UUID dieser Partition, wobei der Index die in machine-id(5)
gespeicherte Maschinenkennung der Installation ist. |
| SD_GPT_TMP 7ec6f557-3bc5-4aca-b293-16ef5df639d1 |
Temporäre-Daten-Partition |
/var/tmp/ |
Die erste Partition mit dieser Art von UUID auf der gleichen Platte wie
der ESP wird als /var/tmp/ eingehängt. |
| SD_GPT_SWAP 0657fd6d-a4ab-43c4-84e5-0933c84b4f4f |
Swap |
n.Z. |
Alle Partitionen mit dieser Art von UUID auf der gleichen Platte wie der
ESP werden als Auslagerungsspeicher verwandt. |
| SD_GPT_ESP c12a7328-f81f-11d2-ba4b-00a0c93ec93b |
EFI-Systempartition (ESP) |
/efi/ oder /boot/ |
Die erste Partition mit dieser Art von UUID auf der gleichen Platte wie
die Wurzelpartition wird als /boot/ oder /efi/ eingehängt, siehe
unten. |
| SD_GPT_XBOOTLDR bc13c2ff-59e6-4262-a352-b275fd6f7172 |
Erweiterte Systemstartprogrammpartition |
/boot/ |
Die erste Partition mit dieser Art von UUID auf der gleichen Platte wie
die Wurzelpartition wird als /boot/ eingehängt, siehe unten. |
Dieser Generator versteht die folgenden Attributschalter
für Partitionen:
Tabelle 2. Partitionsattributsschalter
| Schalter |
anwendbar auf |
Erklärung |
| SD_GPT_FLAG_READ_ONLY 0x1000000000000000 |
/, /home/, /srv/, /var/, /var/tmp/, »Extended Boot
Loader«-Partition |
Partition ist schreibgeschützt eingehängt |
| SD_GPT_FLAG_NO_AUTO 0x8000000000000000 |
/, /home/, /srv/, /var/, /var/tmp/, »Extended Boot
Loader«-Partition |
Partition wird nicht automatisch eingehängt |
| SD_GPT_FLAG_NO_BLOCK_IO_PROTOCOL 0x0000000000000002 |
EFI-Systempartition (ESP) |
Partition wird nicht automatisch eingehängt |
Die Partitionen /home/, /srv/, /var/, /var/tmp/ und für
Auslagerung können im LUKS-Format verschlüsselt sein. In
diesem Fall wird ein Device-Mapper-Gerät unter den Namen
/dev/mapper/home, /dev/mapper/srv, /dev/mapper/var, /dev/mapper/tmp oder
/dev/mapper/swap eingerichtet. Beachten Sie, dass dies Konflikte hervorrufen
könnte, falls die gleiche Partition in /etc/crypttab mit einem
anderen Device-Mapper-Gerätenamen eingetragen ist.
Wenn Systemd in der Initrd läuft, kann die Partition / auch
mit LUKS verschlüsselt sein. In diesem Fall wird ein
Device-Mapper-Gerät unter dem Namen /dev/mapper/root eingerichtet und
ein sysroot.mount wird eingerichtet, das das Gerät unter /sysroot
einhängt. Für weitere Informationen siehe
bootup(7).
Die Wurzelpartition kann durch Symlinken von
/run/systemd/volatile-root nach /dev/block/$major:$minor festgelegt werden.
Dies ist insbesondere nützlich, falls die Wurzeleinhängung
durch irgendeine Art von flüchtigem Dateisystem (Overlayfs) ersetzt
wurde.
Auf EFI-Systemen werden Einhänge- und Autoumount-Units
für die EFI-Systempartition (ESP) und Erweiterte
Systemstartladepartitionen (XBOOTLDR) erstellt. Falls die Platte eine
XBOOTLDR-Partition enthält, wie sie in der
Systemladerspezifikation[4] definiert ist, wird diese unter /boot/
zur Verfügung gestellt. Dieser Generator erstellt eine
Automount-Unit; die Einhängung wird nur bedarfsgesteuert beim Zugriff
aktiviert. Falls notwendig wird der Einhängepunkt erstellt.
Der ESP wird unter /boot/ eingehängt, falls das Verzeichnis
existiert und nicht für XBOOTLDR genutzt wird, andernfalls unter
/efi/. Genau wie bei /boot/ wird eine Automount-Unit verwandt. Falls
notwendig wird der Einhängepunkt erstellt.
Für Einhängepunkte, die in fstab(5)
konfiguriert sind oder Dateien enthalten wird keine Konfiguration
erstellt.
Wenn Sie diesen Generator im Zusammenspiel mit dem Dateisystem
Btrfs verwenden, stellen Sie sicher, dass Sie mit btrfs subvolume
set-default die korrekten Teildatenträger (Subvolumes)
setzen..
Falls das System über systemd-stub(7) gestartet
wurde und der Rumpf dem Anwendungsraum meldete, dass das Kernelabbild in ein
TPM2-PCR eingemessen wurde, dann werden alle ermittelten
Datenträgerkennzeichnungen für root und /var/ (und
Datenträgerverschlüsselungsschlüssel, falls sie
verschlüsselt sind) automatisch in PCR 15 bei der Akivierung
über systemd-pcrfs@.service(8) eingemessen.
systemd-gpt-auto-generator implementiert
systemd.generator(7).
systemd-gpt-auto-generator versteht die folgenden
Kernelbefehlszeilenparameter:
systemd.gpt_auto, rd.systemd.gpt_auto
Diese Optionen akzeptieren ein optionales logisches
Argument und sind standardmäßig »yes«. Der
Generator wird standardmäßig aktiviert und ein falscher Wert
kann zu seiner Deaktivierung verwandt werden (z.B.
»systemd.gpt_auto=0«).
Hinzugefügt in Version 242.
systemd.image_policy=, rd.systemd.image_policy=
Akzeptiert eine Abbildanalyse-Richtlinienzeichenkette als
Argument (gemäß
systemd.image-policy(7)) und erlaubt das
Durchsetzen einer Richtlinie bei der Analyse und die Verwendung der
automatisch erkannten GPT-Partitionstabelleneinträge.
Hinzugefügt in Version 254.
root=, rootfstype=, rootflags=
Wird
root= zusammen mit dem besonderen Wert
»gpt-auto« verwandt (oder der Parameter überhaupt nicht
benutzt wird), ist die automatische Erkennung der Wurzelpartition basierend
auf dem GPT-Partitionstyp aktiviert. Alle anderen Werte deaktivieren diese
Logik.
Die rootfstype= und rootflags= werden zur Auswahl
des Dateisystemtyps und der Optionen verwandt, wenn das Wurzeldateisystem
automatisch ermittelt wird.
Hinzugefügt in Version 242.
rw, ro
Hängt die Wurzelpartition
anfänglich
les-schreibbar oder nur lesbar ein.
Beachten Sie, dass anders als bei den meisten
Kernelbefehlszeilenoptionen diese Einstellungen nicht die Konfigurationen im
Dateisystem außer Kraft setzen und das Dateisystem später neu
eingehängt werden könnte. Siehe
systemd-remount-fs.service(8).
Hinzugefügt in Version 242.
systemd.swap=
Akzeptiert ein logisches Argument oder aktiviert die
Option, falls kein Argument angegeben ist. Falls deaktiviert, wird die
automatische Erkennung von Auslagerungspartition(en), basierend auf dem
GPT-Partitionstyp, deaktiviert. Standardmäßig aktiviert.
Hinzugefügt in Version 254.