BEZEICHNUNG
repart.d - Partitionsdefinitionsdateien für automatische Neupartitionierung beim SystemstartÜBERSICHT
/etc/repart.d/*.conf /run/repart.d/*.conf /usr/lib/repart.d/*.conf
BESCHREIBUNG
repart.d/*.conf-Dateien beschreiben grundlegende Eigenschaften von Partitionen von Blockgeräten auf dem lokalen System. Dies kann zur Erklärung von Typen, Namen und Größen von Partitionen, die existieren sollen, verwandt werden. Der Dienst systemd-repart(8) liest diese Dateien und versucht, derzeit fehlende Partitionen hinzuzufügen und Partitionen gemäß diesen Anforderungen zu vergrößern. Die Aktionen sind im Allgemeinen inkrementell, d.h. dass bei der Anwendung Bestehendes intakt gelassen wird und Partitionen niemals verkleinert, verschoben oder gelöscht werden. Diese Definitionsdateien sind nützlich, um Betriebssystemabbilder zu realisieren, die mit minimaler Größe vorbereitet und ausgeliefert werden (denen zum Beispiel Partitionen für Zustand und zum Auslagern fehlen) und die beim ersten Systemstart von sämtlichem noch freien Platz gemäß einiger grundlegender Regeln Besitz ergreifen. Derzeit ist die Unterstützung für Partitionsdefinitionsdateien nur für GPT-Partitionstabellen implementiert. Partitionsdateien werden im Allgemeinen mit sämtlichen auf der Platte bereits existierenden Partitionen mittels eines einfachen Algorithmus verglichen: die Partitionsdateien werden gemäß ihres Dateinamens sortiert (wobei voranstehende Verzeichnisse ignoriert werden) und dann der Reihe nach mit bestehenden Partitionen verglichen, bei denen die Partitionstyp-UUID übereinstimmt. Insbesondere wird der ersten bestehenden Partition mit einer bestimmten Partitionstyp-UUID die erste Definitionsdatei mit der gleichen Partitionstyp-UUID zugewiesen und der zweiten bestehenden Partition mit einer bestimmten Partitionstyp-UUID die zweite Partitionsdatei mit der gleichen Typ-UUID und so weiter. Für alle verbliebenen Partitionsdateien, die keine passende Partition haben, wird angenommen, dass sie neue Partitionen definieren, die erstellt werden sollen. Solche Partitionen werden am Ende der Partitionstabelle angehängt, in der Reihenfolge, die durch ihre Namen definiert ist, wobei die erste Partitionsposition eingesetzt wird, die größer als die höchste derzeit verwandte Positionsnummer ist. Alle bestehenden Partitionen, für die keine passende Partitionsdatei vorhanden ist, verbleiben unverändert. Beachten Sie, dass diese Definitionen nur zum Erstellen und Initialisieren neuer Partitionen oder zum Vergrößern bestehender Partitionen verwandt werden können. In letzerem Fall wird es nicht die enthaltenen Dateisysteme vergrößern, separate Mechanismen, wie systemd-growfs(8), können dazu verwandt werden, die Dateisysteme innerhalb dieser Partitionen zu vergrößern. Partitionen können auch durch die Einstellung GrowFileSystem= zum automatischen Vergrößern markiert werden. In diesem Fall wird das System beim erstmaligen Einhängen durch Werkzeuge vergrößert, die diesen Schalter respektieren. Details werden nachfolgend beschrieben.[PARTITION]-ABSCHNITT-OPTIONEN
Type=Die GPT-Partitionstyp-UUID, die verglichen
werden soll. Dies kann eine GPT-Partitionstyp-UUID wie
4f68bce3-e8cd-4db1-96e7-fbcaf984b709 oder ein Kennzeichner sein.
Architekturspezifische Partitionstypen können einen dieser
Architekturkennzeichner verwenden: alpha, arc, arm (32
bit), arm64 (64 bit, auch als aarch64 bekannt), ia64,
loongarch64, mips-le, mips64-le, parisc,
ppc, ppc64, ppc64-le, riscv32, riscv64,
s390, s390x, tilegx, x86 (32 bit, auch als i386
bekannt) und x86-64 (64 bit, auch als amd64 bekannt). Die
unterstützen Kennzeichner sind:
Tabelle 1. GPT-Partitionstypkennzeichner
Diese Einstellung ist standardmäßig linux-generic.
Die meisten der oben aufgeführten Partitionstyp-UUIDs sind in der
Spezifikation für auffindbare Partitionen[1] definiert.
Label=
Kennzeichner | Erklärung |
esp | EFI-Systempartition |
xbootldr | Erweiterte Systemstartprogrammpartition |
swap | Auslagerungspartition |
home | Home- (/home/)-Partition |
srv | Serverdaten- (/srv/)-Partition |
var | Variable-Daten- (/var/)-Partition |
tmp | Temporäre-Daten- (/var/tmp/)-Partition |
linux-generic | Generische Linux-Dateisystem-Partition |
root | Wurzeldateisystem-Partitionstyp, der für die lokale Architektur geeignet ist (ein Alias für einen der unten aufgeführten Architektur-Wurzeldateisystem-Partitionstypen, z.B. root-x86-64) |
root-verity | Verity-Daten für die Wurzeldateisystem-Partition für die lokale Architektur |
root-verity-sig | Verity-Signaturdaten für die Wurzeldateisystem-Partition für die lokale Architektur |
root-secondary | Wurzeldateisystem-Partition für die sekundäre Architektur der lokalen Architektur (normalerweise die 32-Bit-Architektur, die auf die lokale 64-Bit-Architektur passt) |
root-secondary-verity | Verity-Daten für die Wurzeldateisystem-Partition der sekundären Architektur |
root-secondary-verity-sig | Verity-Signaturdaten für die Wurzeldateisystem-Partition der sekundären Architektur |
root-{arch} | Wurzeldateisystempartition der angegebenen Architektur (wie root-x86-64 oder root-riscv64) |
root-{arch}-verity | Verity-Daten für die Wurzeldateisystem-Partition der angegebenen Architektur |
root-{arch}-verity-sig | Verity-Signaturdaten für die Wurzeldateisystem-Partition der angegebenen Architektur |
usr | /usr/-Dateisystem-Partitionstyp, der für die lokale Architektur geeignet ist (ein Alias für einen der unten aufgeführten Architektur-/usr/-Dateisystem-Partitionstypen, z.B. usr-x86-64) |
usr-verity | Verity-Daten für die /usr/-Dateisystem-Partition für die lokale Architektur |
usr-verity-sig | Verity-Signaturdaten für die /usr/-Dateisystem-Partition für die lokale Architektur |
usr-secondary | /usr/-Dateisystem-Partition für die sekundäre Architektur der lokalen Architektur (normalerweise die 32-Bit-Architektur, die auf die lokale 64-Bit-Architektur passt) |
usr-secondary-verity | Verity-Daten für die /usr/-Dateisystem-Partition der sekundären Architektur |
usr-secondary-verity-sig | Verity-Signaturdaten für die /usr/-Dateisystem-Partition der sekundären Architektur |
usr-{arch} | /usr/-Dateisystempartition für die angegebene Architektur |
usr-{arch}-verity | Verity-Daten für die /usr/-Dateisystem-Partition der angegebenen Architektur |
usr-{arch}-verity-sig | Verity-Signaturdaten für die /usr/-Dateisystem-Partition der angegebenen Architektur |
Die Plattenbezeichnung in Textform, die der
Partition zugewiesen werden soll, falls noch keine zugewiesen ist. Beachten
Sie, dass diese Einstellung nicht für Vergleiche verwandt wird. Sie
wird auch nicht verwandt, falls für bestehende Partitionen bereits eine
Bezeichnung gesetzt ist. Sie wird daher nur verwandt, wenn eine Partition neu
erstellt wird oder wenn eine bestehende Partition noch keine Bezeichnung
gesetzt hat (das bedeutet: eine leere Bezeichnung). Falls nicht angegeben,
wird automatisch eine Bezeichnung verwandt, die vom Partitionstyp abgeleitet
wird. Einfache Kennzeichner-Expansion wird unterstützt, siehe
unten.
UUID=
Die UUID, die der Partition zugewiesen werden
soll, falls noch keine zugewiesen ist. Beachten Sie, dass diese Einstellung
nicht für Vergleiche verwandt wird. Sie wird auch nicht verwandt, falls
für bestehende Partitionen bereits eine UUID gesetzt ist. Sie wird
daher nur verwandt, wenn eine Partition neu erstellt wird oder wenn eine
bestehende Partition eine komplett aus Nullen bestehende UUID gesetzt hat.
Falls auf »null« gesetzt, wird die UUID komplett auf Nullen
gesetzt. Falls nicht angegeben, wird automatisch eine UUID verwandt, die vom
Partitionstyp abgeleitet wird.
Priority=
Eine der Partition zuzuordnende numerische
Priorität im Bereich -2147483648…2147483647. Kleinere Zahlen
zeigen hierbei höhere Priorität an und größere
Zahlen niedrigere Priorität. Diese Priorität wird verwandt,
falls die konfigurierten Größenbeschränkungen nicht
erlauben, dass alle Partitionen auf den verfügbaren Plattenplatz
passen. Falls die Partitionen nicht passen, wird die höchste numerische
Partitionspriorität aller definierten Partitionen bestimmt und alle
definierten Partitionen mit dieser Priorität werden aus der Liste der
neu zu erstellenden Partitionen entfernt (dies können mehrere sein,
falls die gleiche Priorität für mehrere Partitionen verwandt
wird). Der Einpassungsalgorithmus wird dann erneut versucht. Falls die
Partitionen immer noch nicht passen, wird nun die jetzt höchste
numerische Partitionspriorität bestimmt und die passenden Partitionen
werden auch entfernt, und so weiter. Partitionen mit einer Priorität
von 0 oder niedriger werden niemals entfernt. Falls alle Partitionen mit einer
Priorität über 0 entfernt sind und die Partitionen immer noch
nicht auf das Gerät passen, schlägt die Aktion fehl. Beachten
Sie, dass die Priorität keinen Einfluss auf die Anordnung von
Partitionen hat, verwenden Sie dafür die alphabetische Reihenfolge der
Dateinamen der Partitionsdefinitionsdateien. Standardmäßig
0.
Weight=
Eine numerische Gewichtung im Bereich
0…1000000, das der Partition zugewiesen werden soll. Der
verfügbare Plattenplatz wird den definierten Partitionen
gemäß ihrer relativen Gewichtung zugewiesen (abhängig von
den mit SizeMinBytes=, SizeMaxBytes= konfigurierten
Größenbeschränkungen), so dass eine Partition mit
Gewichtung 2000 den doppelten Platz von einer mit Gewichtung 1000 bekommt und
eine Partition mit Gewichtung 333 ein Drittel davon.
Standardmäßig 1000.
Die Einstellung Weight= wird zur Verteilung des verfügbaren
Plattenplatzes auf »elastische« Art verwandt, basierend auf der
Plattengröße und bestehender Partitionen. Soll eine Partition
eine feste Größe haben, müssen Sie sowohl
SizeMinBytes= als auch SizeMaxBytes= mit dem gleichen Wert
verwenden, um die Größe auf einen Wert festzulegen; die
Gewichtung hat in diesem Fall keine Auswirkung.
PaddingWeight=
Ähnlich zu Weight=, setzt aber
ein Gewichtung für den freien Platz nach der Partitionierung (dem
»Padding«). Bei der Verteilung des verfügbaren Platzes
wird die Gewichtung aller Partitionen und aller definierten Paddings
aufsummiert und dann erhält jede Partition und jedes Padding den durch
ihre Gewichtung bestimmten Anteil. Standardmäßig 0, d.h.
standardmäßig wird kein Padding angewandt.
Padding ist nützlich, falls leerer Platz für spätere
Ergänzungen oder als Sicherheitsabstand am Ende des Gerätes oder
zwischen Partitionen belassen werden soll.
SizeMinBytes=, SizeMaxBytes=
Legt die minimalen und maximalen
Größenbeschränkungen in Byte fest. Akzeptiert die
gewöhnlichen Endungen K, M, G, T … (zur Basis 1024). Falls
SizeMinBytes= angegeben ist, wird die Partition mit mindestens dieser
Größe angelegt oder mindestens auf diese Größe
vergrößert. Falls SizeMaxBytes= angegeben ist, wird die
Partition maximal mit der Größe angelegt oder auf diese
Größe vergrößert. Die genaue Größe
wird mittels des durch Weight= angegebenen Gewichtungswertes
festgelegt, siehe oben. Wird SizeMinBytes= auf den gleichen Wert wie
SizeMaxBytes= festgelegt, dann hat die konfigurierte Gewichtung keine
Auswirkung und die Partition wird auf genau diese feste Größe
gesetzt. Beachten Sie, dass niemals Partitionen kleiner als 4096 Byte angelegt
werden und da Partitionen niemals verkleinert werden, auch die vorhergehende
Größe (falls die Partition bereits existiert) als Untergrenze
für die neue Größe erzwungen wird. Der Wert sollte als
Vielfaches von 4096 Byte angegeben werden und wird aufgerundet (falls
SizeMinBytes=) oder andernfalls abgerundet (falls
SizeMaxBytes=). Falls das zugrundeliegende Gerät nicht genug
Platz bereitstellt, um diese Beschränkungen zu erfüllen, wird
das Anlegen fehlschlagen. Wenn Partitionen angelegt werden sollen, dann
könnten diese, abhängig von der oben beschrieben Einstellung
Priority=, entfallen und der Anlegealgorithmus neu gestartet werden.
Standardmäßig ist eine minimale
Größenbeschränkung von 10 M und keine maximale
Größenbeschränkungen gesetzt.
PaddingMinBytes=, PaddingMaxBytes=
Legt die minimalen und maximalen
Größenbeschränkungen in Byte für den freien Platz
nach der Partition (des »Padding«) fest. Die Semantik ist
ähnlich zu SizeMinBytes= und SizeMaxBytes=, außer
das freier Platz, anders als bei Partitionen, verkleinert und kleiner als Null
werden kann. Standardmäßig sind keine
Größenbeschränkungen für Padding gesetzt, so dass
ausschließlich PaddingWeight= die Größe des
angewandten Paddings bestimmt.
CopyBlocks=
Akzeptiert einen Pfad zu einer
regulären Datei, einem Blockgeräteknoten oder Verzeichnis oder
den besonderen Wert »auto«. Falls angegeben und die Partition
neu erstellt wird, werden die Daten von dem angegebenen Pfad auf die neu
erstellte Partition auf Block-Niveau geschrieben. Falls ein Verzeichnis
angegeben ist, wird das zugrundeliegende Blockgerät des Dateisystems,
auf dem sich das Verzeichnis befindet, bestimmt, und die Daten werden direkt
daraus gelesen. Diese Option ist nützlich, um effizient bestehende
Dateisysteme auf Block-Niveau auf neue Partitionen zu vervielfältigen,
beispielsweise um ein einfaches Betriebssysteminstallationsprogramm oder
Betriebssystem-Abbild-Erstellprogramm zu bauen.
Falls der besondere Wert »auto« festgelegt ist, wird die Quelle,
aus der kopiert wird, automatisch vom laufenden System (oder dem mit
--image= festgelegten Abbild — falls verwandt) aufgenommen. Eine
Partition, die sowohl auf den konfigurierten Partitionstyp (wie mit dem oben
beschriebenen Type= deklariert) passt als auch auf das aktuelle
eingehängte Verzeichnis, das für diesen Paritionstyp geeignet
ist, wird bestimmt. Falls beispielsweise der Partitionstyp auf
»root« gesetzt ist, wird die dem Wurzelverzeichnis (/)
zugrundeliegende Partition als Kopierquelle verwandt — falls deren
Partitionstyp auch auf »root« gesetzt ist. Falls der deklarierte
Typ »usr« ist, wird die /usr/ zugrundeliegende Partition als
Kopierquelle verwandt — falls deren Partitionstyp auch auf
»usr« gesetzt ist. Die Logik ist in der Lage, automatisch die
verschlüsselten und Verity-aktivierten Datenträgern
zugrundeliegenden Partitionen zu ermitteln. »CopyBlocks=auto«
ist nützlich, um »selbst-replizierende Systeme« zu
implementieren, d.h. Systeme, die ihr eigenes Installationsprogramm sind.
Die hier angegebene Datei muss eine Größe haben, die ein
Vielfaches der grundlegenden Blockgröße von 512 und nicht leer
ist. Falls diese Option verwandt wird, wird der
Größenzuweisungsalgorithmus leicht geändert: die
Partition wird mindestens so groß erstellt, damit die Daten
hineinpassen, d.h. die Datengröße ist ein zusätzlicher
Minimalwert, der vom Zuweisungsalgorithmus in Betracht genommen wird,
ähnlich wie und ergänzend zu dem Wert SizeMin=, der
weiter oben konfiguriert ist.
Diese Option hat keinen Effekt, falls die Partition, für die sie
erklärt ist, bereits existiert, d.h. bestehende Daten werden niemals
überschrieben. Beachten Sie, dass die Daten hineinkopiert werden, bevor
die Partitionstabelle aktualisiert wird, d.h. bevor die Partition
tatsächlich dauerhaft erstellt wird. Dies macht das Verfahren robust:
es wird garantiert, dass die Partition entweder gar nicht existiert oder
komplett befüllt ist; es ist nicht möglich, dass die Partition
existiert, aber nicht oder nur teilweise befüllt ist.
Diese Option kann nicht mit Format= oder CopyFiles= kombiniert
werden.
Format=
Akzeptiert einen Dateisystemnamen, wie
»ext4«, »btrfs«, »xfs«,
»vfat«, »squashfs« oder den besonderen Wert
»swap«. Falls dieser angegeben ist und die Partition frisch
erstellt wurde, dann wird diese mit dem angegebenen Dateisystem formatiert
(oder als Auslagerungsgerät). Die Dateisystem-UUID und -Kennzeichnung
werden automatisch aus der Partitions-UUID und dem -Kennzeichen abgeleitet.
Falls diese Option verwandt wird, dann wird der
Größenzuweisungsalgorithmus leicht geändert: die
Partition wird mindestens so groß erstellt, wie für das minimale
Dateisystem des angegebenen Typs notwendig ist (oder 4 kiB, falls die minimale
Größe nicht bekannt ist).
Diese Option hat keine Auswirkung, falls die Partition bereits existiert.
Ähnlich dem Verhalten von CopyBlocks= wird das Dateisystem
formatiert, bevor die Partition erstellt wird, wodurch sichergestellt wird,
dass die Partition immer über ein vollständig initialisiertes
Dateisystem verfügt.
Diese Option kann nicht mit CopyBlocks= kombiniert werden.
CopyFiles=
Akzeptiert ein Paar, durch Doppelpunkt
getrennte absolute Dateisystempfade. Der erste Pfad bezieht sich auf eine
Quelldatei oder ein Quellverzeichnis auf dem Rechner, der zweite Pfad bezieht
sich auf ein Ziel im Dateisystem der frisch erstellten Partition und deren
formatiertes Dateisystem. Diese Einstellung kann zum Kopieren von Dateien oder
Verzeichnissen von dem Rechner auf das Dateisystem, das aufgrund der Option
Format= erstellt wird, verwandt werden. Falls CopyFiles= ohne
explizit angegebenen Format= verwandt wird, dann wird
»Format=« mit einem geeigneten Vorgabewert angenommen (derzeit
»ext4«, dies kann in Zukunft aber geändert werden). Diese
Option kann mehrfach verwandt werden, um mehrere Dateien oder Verzeichnisse
vom Rechner in das frisch formatierte Dateisystem zu kopieren. Falls der
Doppelpunkt und der zweite Pfad ausgelassen wird, dann wird der Quellpfad auch
als der Zielpfad (relativ zu der Wurzel des frisch erstellten Dateisystems)
verwandt. Falls sich der Quellpfad auf ein Verzeichnis bezieht, dann wird
dieses rekursiv kopiert.
Diese Option hat keine Auswirkung, falls die Partition bereits existiert: sie
kann nicht dazu verwandt werden, zusätzliche Dateien auf eine
bestehende Partition zu kopieren, sie kann nur zur Befüllung eines
frisch erstellten Dateisystems verwandt werden.
Die Kopieraktion wird ausgeführt, bevor das Dateisystem in der
Partitionstabelle registriert wird. Damit wird sichergestellt, dass ein so
befülltes Dateisystem immer vollständig initialisiert existiert.
Diese Option kann nicht mit CopyBlocks= kombiniert werden.
Wenn systemd-repart mit dem Befehlszeilenschalter --image= oder
--root= aufgerufen wird, werden die festgelegten Quellpfade als relativ
zu dem festgelegten Wurzelverzeichnis oder der Wurzel des Plattenabbilds
angesetzt.
MakeDirectories=
Akzeptiert einen oder mehrere absolute Pfade,
getrennt durch Leerraum, wobei jedes ein in dem neuen Dateisystem zu
erstellendes Verzeichnis deklariert. Das Verhalten ist ähnlich zu
CopyFiles=, aber statt eine Gruppe von Dateien zu kopieren, erstellt
dies einfach die festgelegten Verzeichnisse mit dem Vorgabemodus 0755 und
Eigentümer und Gruppe »root«, sowie alle ihre
übergeordneten Verzeichnisse (mit der gleichen Eigentümerschaft
und Zugriffsmodus). Um Verzeichnisse mit anderen Eigentümerschaften
oder Zugriffsmodi zu konfigurieren, verwenden Sie CopyFiles= und geben
Sie einen zu kopierenden Quellbaum an, der die Verzeichnisse mit
geeigneter/konfigurierter Eigentümerschaft enthält. Diese Option
kann mehr als einmal verwandt werden, um mehrere Verzeichnisse zu
konfigurieren. Werden CopyFiles= und MakeDirectories= zusammen
verwandt, wird erster zuerst angewandt. Falls ein aufgeführtes
Verzeichnis bereits existiert, wird keine Aktion durchgeführt
(insbesondere verbleiben die Eigentümerschaft und der Zugriffsmodus
unverändert).
Der hauptsächliche Einsatzfall für diese Option ist die Erstellung
einer minimalen Gruppe von Verzeichnissen, über die Partitionen, die in
dem gleichen Plattanabbild enthalten sind, eingehängt werden
können. Für ein Plattenabbild, bei dem das Wurzeldateisystem
für den ersten Systemstart formatiert ist, könnte es
gewünscht sein, automatisch ein /usr/ auf diese Art vorzuerstellen, so
dass die Partition »usr« darüber eingehängt werden
kann.
Ziehen Sie systemd-tmpfiles(8) mit der Option --image= in
Betracht, um andere, komplexere Verzeichnishierarchien (sowie andere Inodes)
mit granularerer Steuerung der Eigentümerschaft, der Zugriffsmodi und
anderer Datei-Attribute zu erstellen.
Encrypt=
Akzeptiert entweder »off«,
»key-file«, »tpm2« oder
»key-file+tpm2«. (Alternativ wird auch ein logischer Wert
akzeptiert, der wenn falsch auf »off« und wenn wahr auf
»key-file« abgebildet wird.) Standardmäßig
»off«. Falls nicht »off«, dann wird die Partition
mit einem LUKS2-Superblock formatiert, bevor die mit CopyBlocks=
konfigurierten Blöcke kopiert werden oder das mit Format=
konfigurierte Dateisystem erstellt wird.
Die LUKS2-UUID wird automatisch aus der Partitions-UUID auf eine stabile Art
abgeleitet. Falls »key-file« oder »key-file+tpm2«
verwandt wird, wird ein Schlüssel aus dem LUKS2-Superblock
hinzufügt, der mit der Option --key-file= von
systemd-repart konfiguriert werden kann. Falls »tpm2«
oder »key-file+tpm2« verwandt wird, wird ein Schlüssel
aus dem LUKS2-Superblock hinzugefügt, der bei dem lokalen TPM2-Chip
registriert wird, wie dies mit den Optionen --tpm2-device= und
--tpm2-pcrs= von systemd-repart konfiguriert werden kann.
Falls verwandt, dann wird die Größenzuweisungslogik leicht
geändert, da die implizite minimalen Größenbegrenzungen
von Format= und CopyBlocks= um den für den
LUKS2-Superblock benötigten Platz erhöht werden (siehe oben).
Diese Option hat keine Auswirkung, falls die Partition bereits existiert.
Verity=
Akzeptiert entweder »off«,
»data«, »hash« oder »signature«.
Standardmäßig »off«. Falls auf »off«
oder »data« gesetzt, wird die Partition mit Inhalt belegt, wie
in CopyBlocks= oder CopyFiles= festgelegt. Falls auf
»hash« gesetzt, wird die Partition mit Verity-Hash-Daten aus der
passenden Verity-Datenpartition belegt. Falls auf »signature«
gesetzt, wird die Partition mit einem JSON-Objekt belegt, das eine Signatur
des Verity-Wurzel-Hashes enthält, das auf die passende
Verity-Hash-Partition passt.
Eine passende Verity-Partition ist eine Partition, mit dem gleichen
Verity-Übereinstimmungsschlüssel (wie mittels
VerityMatchKey= konfiguriert).
Falls nicht explizit konfiguriert, wird die UUID der Datenpartition auf die
ersten 128 bit des Verity-Wurzel-Hashes gesetzt. Ähnlich wird bei
fehlender Konfiguration die UUID der Hash-Partition auf die
abschließenden 128 bit des Verity-Wurzel-Hashes gesetzt. Der
Verity-Wurzel-Hash selbst wird in die Ausgabe von systemd-repart(8) mit
aufgenommen.
Diese Option hat keine Auswirkung, falls die Partition bereits existiert.
Die Verwendung dieser Option zusammen mit Encrypt= wird nicht
unterstützt.
Für jeden eindeutigen Wert VerityMatchKey=, muss eine einzelne
Verity-Datenpartition (»Verity=data«) und eine einzelne
Verity-Hash-Partition (»Verity=hash«) definiert sein.
VerityMatchKey=
Akzeptiert eine kurze, benutzerdefinierte
Kennzeichnerzeichenkette. Diese Einstellung wird dazu verwandt,
Geschwister-Verity-Partitionen für die aktuelle Verity-Partition zu
finden. Siehe die Beschreibung für Verity=.
FactoryReset=
Akzeptiert ein logisches Argument. Falls
angegeben, wird die Partition zum Entfernen während einer
»Zurück auf Werkseinstellung«-Aktion vorgemerkt. Diese
Funktionalität ist für Schemata nützlich, bei denen
Abbilder auf ihren ursprünglichen Zustand durch die Entfernung von
Partitionen und deren Neuerstellung zurückgesetzt werden können.
Standardmäßig aus.
Flags=
Konfiguriert das
64-bit-GPT-Partitions-Schalter-Feld, um die Partition beim Erstellen
einzustellen. Diese Option hat keine Auswirkung, falls die Partition bereits
existiert. Falls nicht festgelegt, wird der Schalterwert komplett auf Nullen
gesetzt, außer für die drei Bits, die auch mittels
NoAuto=, ReadOnly= und GrowFileSystem= konfiguriert
werden können; siehe weiter unten für Details über die
Vorgaben für diese drei Schalter. Geben Sie den Schalterwert
hexadezimal (durch Voranstellen von »0x«), binär
(»0b« voranstellen) oder dezimal (nichts voranzustellen)
an.
NoAuto=, ReadOnly=, GrowFileSystem=
Konfiguriert die Partitionsschalter
»No-Auto«, »Read-Only« und
»Grow-File-System« (Bit 3, 60 und 59) des
Partitionstabelleneintrags, wie er in der Spezifikation für
auffindbare Partitionen[1] definiert ist. Nur für von der
Spezifikation unterstützte Partitionstypen verfügbar. Die Option
ist eine nette Art, die Bits 63, 60 und 59 des Partitionsschalterwerts zu
setzen, ohne die anderen Bits, die mittels Flags= gesetzt werden
können, auch zu setzen, siehe oben.
Falls Flags= zusammen mit einem oder mehreren aus
NoAuto=/ReadOnly=/ GrowFileSystem= verwandt wird, steuern
die letzteren den Wert der relevanten Schalter, d.h. die abstrakten
Einstellungen NoAuto=/ReadOnly=/GrowFileSystem= setzten
die relevanten Bits der systemnahen Einstellungen Flags= außer
Kraft.
Beachten Sie, dass die drei Schalter nur die automatische Einhängung von
Partitionen betreffen, wie sie von systemd-gpt-auto-generator(8) oder
der Option --image= von verschiedenen Befehlen (wie
systemd-nspawn(1)) implementiert ist. Sie hat bei expliziten
Einhängungen, wie sie über mount(8) oder fstab(5)
erfolgen, keine Auswirkungen.
Falls für eine Partition sowohl Bit 50 als auch Bit 59 gesetzt sind (d.h.
die Partition ist sowohl schreibgeschützt markiert als auch zum
Vergrößern), hat letzteres typischerweise keine Auswirkung: der
Schreibschutz-Schalter hat bei den meisten Werkzeugen, die diese Schalter
lesen, Vorrang, und da das Vergrößern das Schreiben der
Partition einschließt, wird es konsequent ignoriert.
NoAuto= ist standardmäßig ausgeschaltet. ReadOnly=
ist für Verity-Partitionstypen standardmäßig
eingeschaltet und für alle anderen ausgeschaltet.
GrowFileSystem= ist für alle Partitionstypen eingeschaltet, die
dies unterstützen, außer falls die Partition
schreibgeschützt markiert ist (und ist damit für
Verity-Partitionen effektiv standardmäßig
ausgeschaltet).).
SplitName=
Konfiguriert die Endung, die an aufgeteilte
Artefakte angehängt werden soll, wenn die Option --split von
systemd-repart(8) verwandt wird. Es wird eine einfache
Kennzeichner-Expansion unterstützt, siehe unten.
Standardmäßig »%t«. Um die Erstellung aufgeteilter
Artefakte für eine Partition zu deaktivieren, setzen Sie
SplitName= auf »-«.
KENNZEICHNER
In den Label=-, CopyBlocks=-, CopyFiles=-, MakeDirectories=-, SplitName=-Einstellungen können Kennzeichner verwandt werden. Die folgenden Expansionen werden verstanden:Kennzeichner | Bedeutung | Details |
"%a" | Architektur | Eine kurze Zeichenkette, die die Architektur des lokalen Systems identifiziert. Eine Zeichenkette wie x86, x86-64 oder arm64. Siehe die für ConditionArchitecture= in systemd.unit(5) definierten Architekturen für die vollständige Liste. |
"%A" | Betriebssystemabbildversion | Die Betriebssystemabbildversionskennzeichnung des laufenden Systems, wie aus dem Feld IMAGE_VERSION= in /etc/os-release ausgelesen. Falls nicht gesetzt, wird es die leere Zeichenkette. Siehe os-release(5) für weitere Informationen. |
"%b" | Boot-Kennung | Die Boot-Kennung des laufenden Systems, formatiert als Zeichenkette. Siehe random(4) für weitere Informationen. |
"%B" | Betriebssystembaukennung | Die Betriebssystembaukennung des laufenden Systems, wie aus dem Feld BUILD_ID= in /etc/os-release ausgelesen. Falls nicht gesetzt, wird es zur leeren Zeichenkette aufgelöst. Siehe os-release(5) für weitere Informationen. |
"%H" | Rechnername | Der Rechnername des laufenden Systems. |
"%l" | Kurzer Rechnername | Die Rechnername des laufenden Systems, abgeschnitten am ersten Punkt, um alle Domain-Komponenten zu entfernen. |
"%m" | Maschinenkennung | Die Maschinenkennung des laufenden Systems, formatiert als Zeichenkette. Siehe machine-id(5) für weitere Informationen. |
"%M" | Betriebssystemabbildkennung | Die Betriebssystemabbildkennung des laufenden Systems, wie aus dem Feld IMAGE_ID= in /etc/os-release ausgelesen. Falls nicht gesetzt, wird es die leere Zeichenkette. Siehe os-release(5) für weitere Informationen. |
"%o" | Betriebssystemkennung | Die Betriebssystemkennung des laufenden Systems, wie aus dem Feld ID= in /etc/os-release ausgelesen. Siehe os-release(5) für weitere Informationen. |
"%v" | Kernelveröffentlichung | Identisch zur Ausgabe von uname -r. |
"%w" | Betriebssystemversionskennung | Die Betriebssystemversionskennzeichnung des laufenden Systems, wie aus dem Feld VERSION_ID= in /etc/os-release ausgelesen. Falls nicht gesetzt, wird es die leere Zeichenkette. Siehe os-release(5) für weitere Informationen. |
"%W" | Betriebssystemvariantenkennung | Die Betriebssystemvariantenkennung des laufenden Systems, wie aus dem Feld VARIANT_ID= in /etc/os-release ausgelesen. Falls nicht gesetzt, wird es die leere Zeichenkette. Siehe os-release(5) für weitere Informationen. |
"%T" | Verzeichnis für temporäre Dateien | Dies ist entweder /tmp oder der Pfad, auf den »$TMPDIR«, »$TEMP« oder »$TMP« gesetzt ist. (Beachten Sie, dass das Verzeichnis ohne abschließenden Schrägstrich angegeben werden kann.) |
"%V" | Verzeichnis für größere und dauerhafte temporäre Dateien | Dies ist entweder /var/tmp oder der Pfad, auf den »$TMPDIR«, »$TEMP« oder »$TMP« gesetzt ist. (Beachten Sie, dass das Verzeichnis ohne abschließenden Schrägstrich angegeben werden kann.) |
"%%" | Einzelnes Prozentzeichen | Verwenden Sie »%%« anstelle von »%«, um ein einzelnes Prozentzeichen anzugeben. |
Kennzeichner | Bedeutung | Details |
"%T" | Partitionstyp-UUID | Die Partitionstyp-UUID, wie mit Type= konfiguriert |
"%t" | Partitionstypkennzeichner | Der Partitionstypkennzeichner, der der Partitionstyp-UUID entspricht |
"%U" | Partitions-UUID | Die Partitions-UUID, wie mit UUID= konfiguriert |
"%n" | Partitionsnummer | Die der Partition zugewiesene Partitionsnummer |
BEISPIELE
Beispiel 1. Vergrößern der Wurzelpartition während des ersten Systemstarts auf die gesamte Plattengröße Mit der folgenden Datei wird die Wurzelpartition automatisch, falls möglich, auf die gesamte Platte während des Systemstarts vergrößert.# /usr/lib/repart.d/50-root.conf [Partition] Type=root
# /usr/lib/repart.d/60-home.conf [Partition] Type=home
# /usr/lib/repart.d/70-swap.conf [Partition] Type=swap SizeMinBytes=64M SizeMaxBytes=1G Priority=1 Weight=333
# /usr/lib/repart.d/50-root.conf [Partition] Type=root SizeMinBytes=512M SizeMaxBytes=512M
# /usr/lib/repart.d/60-root-verity.conf [Partition] Type=root-verity SizeMinBytes=64M SizeMaxBytes=64M
# ln -s 50-root.conf /usr/lib/repart.d/70-root-b.conf # ln -s 60-root-verity.conf /usr/lib/repart.d/80-root-verity-b.conf
# 50-root.conf [Partition] Type=root CopyFiles=/var/tmp/os-tree Verity=data VerityMatchKey=root
# 60-root-verity.conf [Partition] Type=root-verity Verity=hash VerityMatchKey=root
SIEHE AUCH
systemd(1), systemd-repart(8), sfdisk(8), systemd-cryptenroll(1)ANMERKUNGEN
- 1.
- Spezifikation für auffindbare Partitionen
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <[email protected]> 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 Übersetzersystemd 252 |