Provided by: manpages-de_4.27.0-1_all 

BEZEICHNUNG
systemd-repart, systemd-repart.service - Partitionen automatisch vergrößern und hinzufügen und
Plattenabbilder (DDIs) erstellen
ÜBERSICHT
systemd-repart [OPTIONEN…] [[BLOCKGERÄT]…]
systemd-repart.service
BESCHREIBUNG
Basierend auf den in repart.d(5) beschriebenen Konfigurationsdateien kann systemd-repart
Partitionstabellen erzeugen und Partitionen hinzufügen oder vergrößern.
systemd-repart wird beim Bau von Betriebssystemabbildern verwandt und auch beim Einsatz von Abbildern, um
sie während des Systemstarts automatisch auf das System, auf dem sie betrieben werden, anzupassen. Damit
können Abbilder eine minimale Größe haben und beim Systemstart automatisch ergänzt werden und von
Plattenplatz Besitz ergreifen, der verfügbar ist.
Wird systemd-repart ohne Argumente aufgerufen, dann agiert er auf dem Blockgerät, das dem
Wurzeldateisystem des laufenden Betriebssystems zugrundeliegt, womit Partitionen des gestarteten
Betriebssystemabbildes selbst hinzugefügt oder vergrößert werden. Beim Aufruf in der Initrd agiert es
stattdessen auf das /sysroot/ zugrundeliegende Blockgerät, d.h. auf dem Blockgerät, auf das in Kürze
übergeleitet wird. Falls --image= verwandt wird, wird er auf dem festgelegten Gerät oder der Abbild-Datei
agieren. Der Dienst systemd-repart.service wird im Allgemeinen beim Systemstart in der Initrd ausgeführt,
um die Partitionstabelle des Betriebssystems zu ergänzen, bevor deren Partitionen eingehängt werden.
systemd-repart-Aktionen sind größtenteils inkrementell: er vergrößert bestehende Partitionen oder fügt
neue Partitionen hinzu; aber verkleinert oder verschiebt keine Partitionen oder löscht diese. Der Dienst
ist zur Ausführung bei jedem Systemstart gedacht; wenn er allerdings erkennt, dass die Partitionstabelle
bereits den installierten Konfigurationsdateien repart.d/*.conf entspricht, führt es keine Aktion aus.
Es werden unter anderem folgende Anwendungsfälle abgedeckt:
• Die Wurzelpartition kann vergrößert werden, um den gesamten verfügbaren Plattenplatz zu belegen.
• Eine Partition für /home/, zur Auslagerung oder /srv kann hinzugefügt werden.
• Eine zweite (oder dritte, …) Wurzelpartition kann hinzugefügt werden, um A/B-artige Installationen zu
berücksichtigen, bei der eine zweite Version des Wurzeldateisystems alternativ verwandt wird, um
Aktualisierungsschemata zu implementieren. Das verteilte Abbild würde nur eine einzelne Partition
(»A«) transportieren, bei einem ersten Systemstart würde eine zweite Partition (»B«) für diesen Zweck
automatisch erzeugt.
Der von systemd-repart ausgeführte Algorithmus ist grob wie folgt:
1. Die repart.d/*.conf-Konfigurationsdateien werden geladen und ausgewertet und nach Dateinamen sortiert
(ohne das Verzeichnispräfix). Für jede Konfigurationsdatei werden Ergänzungsdateien in Verzeichnissen
mit dem gleichen Namen wie die Konfigurationsdatei mit ergänzter Endung ».d« geladen.
2. Die Partitionstabelle auf dem Blockgerät wird geladen und ausgewertet, falls vorhanden.
3. Die bestehenden Partitionen in der Partitionstabelle werden mit den repart.d/*.conf-Dateien nach
GPT-Partitionstyp-UUID verglichen. Der ersten bestehenden Partition eines bestimmten Typs wird die
erste Konfigurationsdatei, die den gleichen Typ angibt, zugewiesen. Dann wird die zweite bestehende
Partition eines bestimmten Typs der zweiten Konfigurationsdatei zugewiesen, die den gleichen Typ
angibt und so weiter. Nachdem diese iterative Zuweisung abgeschlossen ist, werden alle bestehenden
Partitionen, für die es keine passenden Konfigurationsdateien gibt, als »fremd« betrachtet und
unverändert belassen. Jede Konfigurationsdatei, für die derzeit keine Partition verglichen wurde,
wird als Aufforderung behandelt, solch eine Partition zu erstellen.
4. Zu erstellende Partitionen werden jetzt auf der Platte reserviert, wobei die Größenbeschränkungen und
die in den Konfigurationsdateien erklärten Gewichtungen berücksichtigt werden. Freier Platz wird
unter Berücksichtigung der Größe und Padding-Anforderungen belegt. Zusätzlich werden bestehende
Partitionen, die vergrößert werden sollen, vergrößert. Neue Partitionen werden immer am Ende der
bestehenden Partitionstabelle unter Verwendung der ersten Partitionstabellenpostion, deren Index
größer als der größte aller existierenden Partitionen ist, erstellt. Partitionen werden niemals neu
sortiert, daher bleiben Partitionsnummern stabil. Wenn Partionen erstellt werden, werden sie im
kleinsten Bereich des freien Platzes angelegt, der groß genug ist, die Größen- und
Padding-Beschränkungen zu erfüllen. Das bedeutet, dass Partitionen eine andere Reihenfolge auf Platte
als in der Partitionstabelle haben können. Beachten Sie, dass diese Reservierung ausschließlich im
Arbeitsspeicher passiert, die Partitionstabelle auf der Platte wird noch nicht aktualisiert.
5. Allen bestehenden Partitionen, für die Konfigurationsdateien existieren und für die derzeit noch
keine GPT-Partitionsbezeichnung gesetzt ist, wird eine Bezeichnung zugewiesen, entweder explizit aus
der Konfiguration heraus oder (falls das fehlt) automatisch aus dem Partitionstyp abgeleitet. Das
Gleiche erfolgt für alle neu erstellten Partitionen. Diese Zuweisungen erfolgen auch ausschließlich
im Arbeitsspeicher, die Platte wird noch nicht aktualisiert.
6. Ähnlich wird allen bestehenden Partitionen, für die Konfigurationsdateien existieren und deren
kennzeichnende UUID derzeit komplett Null ist, eine neue UUID zugewiesen. Diese UUID wird mittels
eines kryptographischen Hashes aus einem gemeinsamen Startwert zusammen mit der Partitionstyp-UUID
(und einem Zähler, falls mehrere Partitionen des gleichen Typs definiert sind) ermittelt, siehe
unten. Das Gleiche erfolgt für alle neu erstellten Partitionen. Diese Zuweisungen erfolgen auch nur
im Arbeitsspeicher, die Platte wird noch nicht aktualisiert.
7. Falls die Laufwerks-UUID komplett Null ist, wird diese auch ähnlich initialisiert, ebenfalls mittels
kryptographischen Hashes aus dem gleichen gemeinsamen Startwert. Dies erfolgt auch nur im
Arbeitsspeicher.
8. Der den neuen Partitionen zugewiesene Plattenplatz (d.h. was bisher freier Platz war) wird gelöscht.
Insbesondere werden alle Dateisystemsignaturen entfernt und, falls das Gerät dies untersützt, wird
der E/A-Steuerbefehl BLKDISCARD erteilt, um die Hardware zu informieren, dass der Platz nun leer ist.
Zusätzlich wird entsprechend sämtliches »Padding« zwischen den Partitionen und dem Ende des Geräts
gelöscht.
9. Die neue Partitionstabelle wird schließlich auf Platte geschrieben. Der Kernel wird gebeten, die
Partitionstabelle neu einzulesen.
Als Ausnahme zu der normalerweise inkrementellen Arbeitsweise kann systemd-repart zum Löschen
existierender Partitionen beim Aufruf in einem besonderen Modus »Zurück auf Werkseinstellung« verwandt
werden, um die Installation zurück auf die Vorgaben des Lieferanten zu setzen. Dieser Arbeitsmodus wird
verwandt, wenn entweder der Schalter --factory-reset=yes auf der Befehlszeile des Werkzeugs übergeben
wird oder die Aktion systemd.factory_reset=yes auf der Kernelbefehlszeile übergeben wird oder die
EFI-Variable FactoryReset (Lieferanten-UUID 8cf2644b-4b0b-428f-9387-6d876050dc67) auf »yes« gesetzt ist.
Es ändert den obigen Algorithmus leicht: zwischen den obigen Schritten Drei und Vier wird jede Partition,
die explizit mit dem logischen Wert FactoryReset= markiert ist, gelöscht, und der Algorithmus neu
gestartet, wodurch diese Partitionen erneut leer erstellt werden.
Beachten Sie, dass systemd-repart standardmäßig nur Partitionstabellen ändert, es erstellt oder
vergrößert keine Dateisysteme innerhalb dieser Partitionen, außer die Konfigurationsoption Format= ist
angegeben. Beachten Sie auch, dass für diesen Zweck separate Mechanismen verfügbar sind, beispielsweise
systemd-growfs(8) und systemd-makefs.
Der Hash-Wert der UUIDs, die die neu erstellten Partitionen kennzeichnen (oder bestehenden Partitionen,
die noch keine UUID hatten, zugewiesen wurden), sowie der Platte als Ganzes, wird kryptographisch aus
einem gemeinsamen Startwert berechnet. Dieser Startwert ist normalerweise die machine-id(5) des Systems,
so dass die Maschinenkennung wiederholbar die allen Platten zugewiesenen UUIDs bestimmt. Falls die
Maschinenkennung nicht gelesen werden kann (oder der Benutzer das nachfolgend beschriebene --seed=random
übergibt), wird der Startwert stattdessen zufällig erzeugt, womit die Partitions-UUIDs letztendlich
zufällig sind. Der Startwert kann auch explizit gesetzt werden; dafür muss er als UUID über die Option
--seed= angegeben werden. Durch den Hash der UUIDs mit einem gemeinsamen Startwert werden Abbilder, die
mit diesem Werkzeug erstellt werden, reproduzierbar und das Ergebnis des obigen Algorithmus wird
deterministisch.
Das Positionsargument sollte das Blockgerät oder eine normale Datei angeben, auf dem/der agiert werden
soll. Falls --empty=create angegeben ist, dann wird der angegebene Pfad als reguläre Datei erstellt, was
für die Erstellung von Plattenabbildern von Null auf nützlich ist.
OPTIONEN
Die folgenden Optionen werden verstanden:
--dry-run=
Akzeptiert einen logischen Wert. Falls der Schalter nicht angegeben ist, ist --dry-run=yes die
implizierte Vorgabe. Steuert, ob systemd-repart die erbetene Neupartitionierungsaktion ausführt oder
ob es nur anzeigen soll, was es machen würde. Die Partitionstabelle des Gerätes wird nur angefasst,
falls --dry-run=no festgelegt ist.
Hinzugefügt in Version 245.
--empty=
Akzeptiert entweder »refuse«, »allow«, »require«, »force« oder »create«. Steuert, wie auf komplett
leeren Blockgeräten agiert werden soll, d.h. solchen, die noch keine
Partitionstabelle/Plattenbezeichnung tragen. Falls dieser Schalter nicht angegeben ist, ist »refuse«
die implizite Vorgabe.
Falls »refuse«, verlangt systemd-repart, dass das Blockgerät, auf dem es agieren soll, eine
Partitionstabelle trägt und lehnt die Aktion ab, falls keine gefunden wird. Falls »allow«, wird der
Befehl eine bestehende Partitionstabelle erweitern oder eine neue erstellen, falls noch keine
existiert. Falls »require«, wird der Befehl eine neue Partitionstabelle erstellen, falls noch keine
existiert, und die Aktion ablehnen, falls bereits eine existiert. Falls »force«, wird es
bedingungslos eine frische Partitionstabelle erstellen, wodurch die komplette Platte gelöscht wird.
Falls »force«, werden keine bestehenden Partitionen berücksichtigt bzw. überleben diese Aktion.
Somit: Verwenden Sie dies vorsichtig, dies ist eine großartige Möglichkeit, Ihre sämtlichen Daten zu
verlieren. Falls »create«, wird eine neue Loopback-Datei unterhalb des mit dem Parameter Geräteknoten
übergebenen Pfades erstellt, mit der mit --size= angezeigten Größe, siehe unten.
Hinzugefügt in Version 245.
--discard=
Akzeptiert einen logischen Wert. Falls dieser Schalter nicht angegeben wird, ist --discard=yes die
implizite Vorgabe. Steuert, ob der E/A-Steuerbefehl BLKDISCARD für den Bereich, der von hinzugefügten
Partitionen belegt wird, oder dem Bereich dazwischen, erteilt werden soll. Normalerweise ist es eine
gute Idee, diese Anfrage zu erteilen, da sie die zugrundeliegende Hardware informiert, dass die
betrachteten Blöcke als leer angenommen werden sollen, wodurch die Leistung erhöht wird. Falls auf
einer regulären Datei statt auf einem Blockgeräteknoten agiert wird, dann wird eine Sparse-Datei
erstellt.
Hinzugefügt in Version 245.
--size=
Akzeptiert eine Größe in Bytes mittels der üblichen Endungen K, M, G, T oder den besonderen Wert
»auto«. Falls verwandt, muss der angegebene Geräteknotenpfad sich auf eine reguläre Datei beziehen,
die dann auf die angegeben Größe vergrößert wird, falls sie kleiner ist, bevor irgendwelche
Änderungen an der Partitionstabelle erfolgen. Falls als »auto« angegeben, wird die minimale Größe für
das Platten-Abbild automatisch bestimmt (d.h. die minimale Größe aller Partitionen wird unter
Berücksichtigung des Platzbedarfs für zusätzliche Metadaten aufsummiert). Dieser Schalter wird nicht
unterstützt, falls der angegebene Knoten ein Blockgerät ist. Dieser Schalter hat keinen Effekt, falls
die Datei bereits so groß wie oder größer als die angegebene Größe ist. Die angegebene Größe wird
implizit auf Vielfache von 4096 aufgerundet. Wird dies zusammen mit --empty=create verwandt, dann
gibt dies die anfängliche Größe der zu erstellenden Loopback-Datei an.
Die Option --size=auto berücksichtigt die Größe von bereits existierenden Partitionen. Allerdings
trägt sie Partitionstabellen, die nicht eng gepackt sind, keine Rechnung: die konfigurierten
Partitionen könnten weiterhin nicht in das zugrundeliegende Gerät passen, falls zwischen den bereits
existierenden Partitionen (oder vor der ersten Partition) leerer Platz existiert, der nicht
vollständig von zu erstellenden oder anzuwachsenden Partitionen ausgefüllt werden kann.
Beachten Sie auch, dass die automatische Größenbestimmung keine Dateien oder Verzeichnisse
berücksichtigt, die mit CopyFiles= angegeben sind: die Aktion könnte fehlschlagen, falls die
angegebenen Dateien oder Verzeichnisse mehr Plattenplatz benötigen, als für die partitionsbezogenen
minimalen Größenbegrenzung konfiguriert ist.
Hinzugefügt in Version 246.
--factory-reset=
Akzeptiert einen logischen Wert. Falls dieser Schalter nicht angegeben wird, ist --factory=reset=no
die implizite Vorgabe. Steuert, ob im oben beschriebenen Modus »Zurück auf Werkseinstellung« agiert
werden soll. Falls auf true gesetzt, wird dies alle bestehenden, mit FactoryReset= auf »yes«
gesetzten Partitionen früh entfernen, während der Neupartitionierungsalgorithmus ausgeführt wird.
Verwenden Sie dies vorsichtig, dies ist eine großartige Möglichkeit, Ihre sämtlichen Daten zu
verlieren. Beachten Sie, dass Partitionsdateien FactoryReset= explizit einschalten müssen, da die
Option standardmäßig ausgeschaltet ist. Falls keine Partitionen für die Rückkehr in die
Werkseinstellungen markiert sind, hat dieser Schalter keine Auswirkungen. Beachten Sie, dass es zwei
andere Möglichkeiten gibt, die Aktion »Zurück auf Werkseinstellung« zu erbitten: mittels der
Kernelbefehlszeile oder über eine EFI-Variable, siehe oben.
Hinzugefügt in Version 245.
--can-factory-reset
Falls dieser Schalter angegeben ist, wird die Platte nicht neupartitioniert. Stattdessen wird
ermittelt, ob bestehende Partitionen mit FactoryReset= markiert sind. Falls dies der Fall ist, wird
sich das Werkzeug mit einem Exit-Status 0 beenden, andernfalls mit einem von 0 verschiedenen Wert.
Dieser Schalter wird dazu verwandt, schnell zu bestimmen, ob das laufende System das in
systemd-repart eingebaute Zurücksetzen auf die Werkseinstellungen unterstützt.
Hinzugefügt in Version 245.
--root=
Akzeptiert einen Pfad zu einem Verzeichnis, das als Wurzeldateisystem bei der Suche nach
repart.d/*.conf-Dateien, der Maschinenkennungsdatei, die als Startwert verwandt werden soll, und für
die Quelldateien und -Verzeichnisse CopyFiles= und CopyBlocks= eingesetzt werden soll. Wird dies auf
dem regulären Dateisystem aufgerufen, ist die Vorgabe das Wurzeldateisystem »/« des Rechners. Beim
Aufruf in der Initrd ist die Vorgabe /sysroot/, so dass das Werkzeug auf der Konfiguration und der im
Wurzeldateisystem, auf das später übergeleitet wird, gespeicherten Maschinenkennung agieren wird.
Siehe --copy-source= für eine beschränktere Option, die nur CopyFiles= betrifft.
Hinzugefügt in Version 245.
--image=
Akzeptiert einen Pfad zu einer Abbilddatei oder einem Abbildgerät, das in ähnlicher Art wie --root=
eingehängt und verwandt werden soll, siehe oben.
Hinzugefügt in Version 249.
--image-policy=Richtlinie
Akzeptiert gemäß systemd.image-policy(7) eine Abbildrichtlinienzeichenkette als Argument. Die
Richtlinie wird bei Aktionen auf dem mittels --image= angegebenen Plattenabbild durchgesetzt, siehe
oben. Falls nicht angegeben ist die Vorgabe die Richtlinie »*«, d.h. alle erkannten Dateisysteme im
Abbild werden verwandt.
--seed=
Akzeptiert eine UUID oder den besonderen Wert random als Argument. Falls eine UUID festgelegt ist,
werden die Partitionen und der Partitionstabelle selbst zuzuweisenden UUIDs durch kryptographisches
Hashen daraus abgeleitet. Falls nicht angegeben, wird versucht, die Maschinenkennung des Rechners
abzuleiten (oder genauer, aus dem mit --root= konfigurierten Wurzelverzeichnis) und dies stattdessen
als Startwert zu verwenden, ansonsten wird auf einen zufälligen Startwert zurückgefallen. Verwenden
Sie --seed=random, um einen zufälligen Startwert zu erzwingen. Durch explizites Setzen des
Startwertes können streng reproduzierbare Partitionstabellen erstellt werden.
Hinzugefügt in Version 245.
--pretty=
Akzeptiert ein logisches Argument. Falls dieser Schalter nicht angegeben ist, ist die Vorgabe an,
falls es von einem interaktiven Terminal aufgerufen wird, ansonsten aus. Steuert, ob eine
benutzerfreundliche Tabelle angezeigt und graphisch die angewandten Änderungen dargestellt werden
sollen.
Hinzugefügt in Version 245.
--definitions=
Akzeptiert einen Dateisystempfad. Falls angegeben, werden die *.conf-Dateien aus dem angegebenen
Verzeichnis gelesen, statt nach ihnen in /usr/lib/repart.d/*.conf, /etc/repart.d/*.conf,
/run/repart.d/*.conf zu suchen.
Dieser Parameter kann mehrmals angegeben werden.
Hinzugefügt in Version 245.
--key-file=
Akzeptiert einen Dateisystempfad. Konfiguriert den zu verwendenden Verschlüsselungsschlüssel, wenn
LUKS2-Datenträger mit der Einstellung Encrypt=key-file in Partitionsdateien eingerichtet werden.
Sollte sich auf eine normale Datei, die den Schlüssel enthält, beziehen, oder ein
AF_UNIX-Datenstrom-Socket im Dateisystem. In letzterem Fall wird zu dieser eine Verbindung
aufgenommen und der Schlüssel daraus gelesen. Falls dieser Schalter nicht angegeben ist, wird der
leere Schlüssel (d.h. ein Schlüssel der Länge Null) verwandt. Dieses Verhalten ist für die
Einrichtung von verschlüsselten Partitionen während der frühen erstmaligen Systemstartphase nützlich,
bei denen des vom Anwender bereitgestellte Passwort erst in einem späteren Einrichtungsschritt
empfangen wird.
Hinzugefügt in Version 247.
--private-key=
Akzeptiert einen Dateisystempfad oder eine Engine- oder Provider-spezifische Bezeichnung.
Konfiguriert den bei der Erstellung von Verity-Signaturpartitionen mit der Einstellung
Verity=signature in Partitionsdateien zu verwendenen Signaturschlüssel.
Hinzugefügt in Version 252.
--private-key-source=
Akzeptiert entweder »file«, »engine« oder »provider«. Außer bei »file« folgt der Name eines Providers
oder eine Engine, getrennt durch einen Doppelpunkt, der an die »Engine«- oder »Provider«-Logik von
OpenSSL übergeben wird. Konfiguriert den bei der Erstellung von Verity-Signaturpartitionen mit der
Einstellung Verity=signature in Partitionsdateien zu verwendenen Lademechanismus des privaten
Schlüssels.
Hinzugefügt in Version 256.
--certificate=
Akzeptiert einen Dateisystempfad oder eine Provider-spezifische Benennung. Konfiguriert das bei der
Erstellung von Verity-Signaturpartitionen mit der Einstellung Verity=signature in Partitionsdateien
zu verwendene PEM-kodierte X.509-Zertifikat.
Hinzugefügt in Version 252.
--certificate-source=
Akzeptiert entweder »file« oder »provider«. Außer bei »file« folgt der Name eines Providers, getrennt
durch einen Doppelpunkt, der an die »Provider«-Logik von OpenSSL übergeben wird. Konfiguriert, wie
bei der Erstellung von Verity-Signaturpartitionen mit der Einstellung Verity=signature in
Partitionsdateien zu verwendene X.509-Zertifikate geladen werden.
Hinzugefügt in Version 257.
--tpm2-device=, --tpm2-pcrs=
Konfiguriert das TPM2-Gerät und die Liste der PCRs, die für mit der Option Encrypt=tpm2
konfigurierten LUKS2-Datenträger verwandt werden. Diese Option akzeptiert die gleichen Parameter wie
die identisch benannte Option in systemd-cryptenroll(1) und hat die gleiche Auswirkung auf
Partitionen, bei denen TPM2-Registrierung erbeten wird.
Hinzugefügt in Version 248.
--tpm2-device-key=PFAD, --tpm2-seal-key-handle=REFERENZ
Konfiguriert einen TPM2-SRK-Schlüssel, an den die Verschlüsselung gebunden wird. Siehe
systemd-cryptenroll(1) für Details zu dieser Option.
Hinzugefügt in Version 255.
--tpm2-public-key=PFAD, --tpm2-public-key-pcrs=PCR[+PCR…]
Konfiguriert eine TPM2-signierte PCR-Richtlinie, an die die Verschlüsselung gebunden wird. Siehe
systemd-cryptenroll(1) für Details zu diesen zwei Optionen.
Hinzugefügt in Version 252.
--tpm2-pcrlock=PFAD
Konfiguriert eine TPM2-Pcrlock-Richtlinie, an die die Verschlüsselung gebunden wird. Siehe
systemd-cryptenroll(1) für Details zu dieser Option.
Hinzugefügt in Version 255.
--split=LOGISCH
Aktiviert die Erstellung von geteilten Artefakten von Partitionen, die mit SplitName= konfiguriert
wurden. Falls aktiviert, wird für jede Partition mit gesetztem SplitName= eine getrennte Ausgabedatei
erstellt, die nur den Inhalt dieser Partition enthält. Der Ausgabedateiname besteht aus dem
Loopback-Dateinamen, dem der mit SplitName= konfigurierte Name angehängt wird. Falls der
Loopback-Dateiname auf ».raw« endet, wird die neue Endung stattdessen vor der Erweiterung ».raw«
eingefügt.
Beachten Sie, dass --split unabhängig von --dry-run ist. Selbst wenn --dry-run aktiviert ist, werden
die Trennungsartefakte weiterhin aus einem bestehenden Abbild erstellt, falls --split aktiviert ist.
Hinzugefügt in Version 252.
--include-partitions=PARTITIONEN, --exclude-partitions=PARTITIONEN
Diese Optionen legen fest, auf welchen Partitionstypen systemd-repart agieren sollte. Falls
--include-partitions= verwandt wird, werden alle Partitionen, die nicht festgelegt wurden,
ausgeschlossen. Falls --exclude-partitions= verwandt wird, werden alle Partitionen, die festgelegt
wurden, ausgeschlossen. Beide Optionen akzeptieren eine Kommata-getrennte Liste von
GPT-Partitionstyp-UUIDs oder -Kennzeichner (siehe Type= in repart.d(5)).
Hinzugefügt in Version 253.
--defer-partitions=PARTITIONEN
Diese Option legt fest, welche Partitionstypen systemd-repart zurückstellen soll. Alle mit dieser
Option zurückgestellten Partitionen werden weiterhin bei der Berechnung der Größen und Versätze
anderer Partitionen berücksichtigt, aber nicht tatsächlich auf die Plattenabbilder geschrieben. Die
Gesamtauswirkung dieser Option besteht darin, dass bei der erneuten Ausführung von systemd-repart
ohne diese Option die fehlenden Partitionen hinzugefügt werden, als ob sie nicht bei der ersten
Ausführung von systemd-repart zurückgestellt worden wären.
Hinzugefügt in Version 253.
--sector-size=BYTE
Diese Option ermöglicht die Konfiguration der Sektorgrößen von durch systemd-repart erstellten
Abbildern. Sie akzeptiert einen Wert, der eine Potenz von »2« zwischen »512« und »4096« ist. Diese
Option ist bei der Erstellung von Abbildern für Platten nützlich, die eine andere Sektorengröße als
die Platte verwenden, auf der das Abbild erstellt wird.
Hinzugefügt in Version 253.
--architecture=ARCH
Diese Option erlaubt das Außerkraftsetzen der für die Architektur-spezifischen Partitionstypen
verwandten Architektur. Wird sie beispielsweise auf »arm64« gesetzt, wird ein in
repart.d/-Ergänzungen referenzierter Partitionstyp »root-x86-64« stattdessen dynamisch als Referenz
auf »root-arm64« eingefügt. Akzeptiert entweder »alpha«, »arc«, »arm«, »arm64«, »ia64«,
»loongarch64«, »mips-le«, »mips64-le«, »parisc«, »ppc«, »ppc64«, »ppc64-le«, »riscv32«, »riscv64«,
»s390«, »s390x«, »tilegx«, »x86« oder »x86-64«.
Hinzugefügt in Version 254.
--offline=LOGISCH
Weist systemd-repart an, das Abbild offline zu bauen. Akzeptiert einen logischen Wert oder »auto«.
Standardmäßig »auto«. Falls aktiviert, wird das Abbild ohne die Verwendung von Loop-Geräten gebaut.
Dies ist nützlich, um Abbilder ohne Privilegien zu bauen oder wenn Loop-Geräte nicht verfügbar sind.
Falls deaktiviert, wird das Abbild immer unter Verwendung von Loop-Geräten gebaut. Falls »auto«, wird
systemd-repart die Abbilder falls möglich online bauen und auf den offline-Bau zurückfallen, falls
Loop-Geräte nicht verfügbar oder aufgrund fehlender Berechtigungen nicht im Zugriff sind.
Hinzugefügt in Version 254.
--copy-from=ABBILD
Weist systemd-repart an, Partitionsdefinitionen aus der Partitionstabelle des angegebenen Abbilds zu
generieren. Diese Option kann mehrfach angegeben werden, um Definitionen aus jeder der angegebenen
Abbilder zu generieren. Die generierten Definitionen werden die Partitionen in die
Zielpartitionstabelle kopieren. Die kopierten Partitionen werden die gleiche Größen, Metadaten und
Inhalte haben, könnten aber eine andere Partitionsnummer haben und sich an verschiedenen Versätzen in
der Zielpartitionstabelle befinden. Diese Definitionen können mit Partitionsdefinitionen kombiniert
werden, die von normalen Partitionsdefinitionsdateien ausgelesen werden. Die generierten Definitionen
haben gegenüber aus Partitionsdefinitionsdateien gelesenen Definitionen Vorrang.
Hinzugefügt in Version 255.
--copy-source=PFAD, -s PFAD
Gibt ein Quellverzeichnis an, zu dem alle Quellpfade CopyFiles= als relativ betrachtet werden sollen.
Dies ist ähnlich zu --root=, gilt aber ausschließlich für die Einstellung CopyFiles=. Falls --root=
und --copy-source= zusammen verwandt werden, gilt erstere wie gewöhnlich, außer für CopyFiles=, wo
letztere Vorrang hat.
Hinzugefügt in Version 255.
--make-ddi=TYP
Akzeptiert entweder »sysext«, »confext« oder »portable«. Erstellt ein »Discoverable Disk Image« (DDI,
Erkennbares Plattenabbild) für eine Systemerweiterung (Sysext, siehe systemd-sysext(8) zu Details),
eine Konfigurationserweiterung (Confext) oder Portierbare Dienste[1]. Das generierte Abbild wird aus
einem signierten Verity-»erofs«-Dateisystem als Wurzelpartition bestehen. In diesem Betriebsmodus
werden die in /usr/lib/repart.d/*.conf und verwandten Verzeichnissen befindlichen
Partitionsdefinitionen nicht gelesen und --definitions= wird nicht unterstützt, da die geeigneten
Definitionen für ausgewählte DDI-Klassen automatisch ausgewählt werden.
Muss im Zusammenhang mit --copy-source= verwandt werden, um die Dateihierarchie festzulegen, mit der
das DDI befüllt wird. Das angegebene Verzeichnis sollte ein Unterverzeichnis »etc/« enthalten, falls
»confext« ausgewählt ist. Falls »sysext« ausgewählt ist, sollte es ein Verzeichnis »usr/« oder »opt/«
oder beide enthalten. Falls »portable« verwandt wird, kann eine vollständige Betriebssystemhierarchie
bereitgestellt wird.
Diese Option impliziert --empty=create, --size=auto und --seed=random (letztere kann außer Kraft
gesetzt werden).
Der zur Signatur des DDI verwandte private Schlüssel und das Zertifikat muss mit den Schaltern
--private-key= und --certificate= angegeben werden.
Hinzugefügt in Version 255.
-S, -C, -P
Abkürzungen für --make-ddi=sysext, --make-ddi=confext bzw. --make-ddi=portable.
Hinzugefügt in Version 255.
--generate-fstab=PFAD
Gibt einen Pfad an, an den fstab(5)-Einträge für die mittels MountPoint= konfigurierten
Einhängepunktes geschrieben werden. Der Einhängepunkt wird mittels --copy-source= oder --root=
angegeben. Falls keiner davon angegegeben ist, wird das Wurzelverzeichnis der Hauptmaschine verwandt.
Standardmäßig deaktiviert.
Hinzugefügt in Version 256.
--generate-crypttab=PFAD
Gibt einen Pfad an, an den Crypttab-Einträge für die mittels EncryptedVolume= in dem mit
--copy-source= angegebenen Wurzelverzeichnis geschrieben werden. Der Crypttab-Eintrag wird mittels
--copy-source= oder --root= angegeben. Falls keiner davon angegegeben ist, wird das Wurzelverzeichnis
der Hauptmaschine verwandt. Standardmäßig deaktiviert.
Hinzugefügt in Version 256.
--list-devices
Zeigt eine Liste von Kandidatenblockgeräten, auf denen dieser Befehl agieren kann. Insbesondere zählt
er eine Liste von aktuell vorhandenen Blockgeräten auf, die Partitionstabellen unterstützen, und
zeigt ihren Geräteknotenpfad zusammen mit allen ihren Symlinks.
Hinzugefügt in Version 257.
-h, --help
Zeigt einen kurzen Hilfetext an und beendet das Programm.
--version
Zeigt eine kurze Versionszeichenkette an und beendet das Programm.
--no-pager
Leitet die Ausgabe nicht an ein Textanzeigeprogramm weiter.
--no-legend
Gibt die Legende nicht aus, d.h. die Spaltenköpfe und die Fußzeile mit Hinweisen.
--json=MODUS
Zeigt die Ausgabe als JSON formatiert. Erwartet entweder »short« (für die kürzest mögliche Ausgabe
ohne unnötigen Leerraum oder Zeilenumbrüche), »pretty« (für eine schönere Version der gleichen
Ausgabe, mit Einzügen und Zeilenumbrüchen) oder »off« (um die JSON-Ausgabe auszuschalten, was die
Vorgabe ist).
EXIT-STATUS
Bei Erfolg wird 0 zurückgegeben und anderenfalls ein Fehlercode ungleich Null.
BEISPIEL
Beispiel 1. Erstellen eines Konfigurationserweiterungsabbilds
Folgendes erstellt eine Konfigurationserweiterung DDI (Confext) für eine /etc/motd-Aktualisierung:
mkdir -p tree/etc/extension-release.d
echo "Hallo Welt" >tree/etc/motd
cat >tree/etc/extension-release.d/extension-release.my-motd <<EOF
ID=fedora
VERSION_ID=38
IMAGE_ID=my-motd
IMAGE_VERSION=7
EOF
systemd-repart -C \
--private-key=privkey.pem \
--certificate=cert.crt \
-s tree/ \
/var/lib/confexts/my-motd.confext.raw
systemd-confext refresh
Die auf diese Art erstellte DDI kann auf das System mit systemd-confext(1) angewandt werden.
Beispiel 1. Erstellen eines Systemerweiterungsabbilds und Signieren mittels PKCS11
Folgendes erstellt eine Systemerweiterung DDI (Sysext) für eine /usr/foo-Aktualisierung und signiert sie
mit einem Hardware-Token mittels PKCS11:
mkdir -p tree/usr/lib/extension-release.d
echo "Hallo Welt" >tree/usr/foo
cat >tree/usr/lib/extension-release.d/extension-release.my-foo <<EOF
ID=fedora
VERSION_ID=38
IMAGE_ID=my-foo
IMAGE_VERSION=7
EOF
systemd-repart --make-ddi=sysext \
--private-key-source=engine:pkcs11 \
--private-key="pkcs11:model=PKCS%2315%20emulated;manufacturer=piv_II;serial=0123456789abcdef;token=Some%20Cert" \
--certificate=cert.crt \
-s tree/ \
/var/lib/extensions/my-foo.sysext.raw
systemd-sysext refresh
Die auf diese Art erstellte DDI kann auf das System mit systemd-sysext(8) angewandt werden.
SIEHE AUCH
systemd(1), repart.d(5), machine-id(5), systemd-cryptenroll(1), portablectl(1), systemd-sysext(8)
ANMERKUNGEN
1. Portable Dienste
https://systemd.io/PORTABLE_SERVICES
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <debian@helgefjell.de> 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 die
Mailingliste der Übersetzer: debian-l10n-german@lists.debian.org.
systemd 257.6 SYSTEMD-REPART(8)