.\" -*- coding: UTF-8 -*- '\" t .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH UKIFY 1 "" "systemd 255" ukify .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 ukify \- Komponenten zu einem einzigen, vereinigten Kernelabbild für UEFI\-Systeme kombinieren .SH ÜBERSICHT .HP \w'\fBukify\fR\ 'u \fBukify\fP [OPTIONEN…] build .HP \w'\fBukify\fR\ 'u \fBukify\fP [OPTIONEN…] genkey .HP \w'\fBukify\fR\ 'u \fBukify\fP [OPTIONEN…] inspect DATEI… .SH BESCHREIBUNG .PP \fBukify\fP ist ein Werkzeug, dessen Hauptzweck die Kombination von Komponenten (normalerweise einem Kernel, einer Initrd und einem UEFI\-Startrumpf) ist, um ein \m[blue]\fBVereinigtes Kernelabbild (UKI)\fP\m[]\&\s-2\u[1]\d\s+2 zu erstellen \(en ein PE\-Programm, das durch die Firmware ausgeführt werden kann, um einen eingebetteten Linux\-Kernel zu starten\&. Siehe \fBsystemd\-stub\fP(7) für Details über den Rumpf\&. .SH BEFEHLE .PP Die folgenden Befehle werden verstanden: .SS build .PP Dieser Befehl erstellt ein vereinigtes Kernelabbild\&. Die zwei zentralen Optionen, die für den Unterbefehl \fBbuild\fP angegeben werden sollten, sind \fILinux=\fP/\fB\-\-linux=\fP und \fIInitrd=\fP/\fB\-\-initrd=\fP\&. \fIInitrd=\fP akzeptiert mehrere, durch Leerraum getrennte Pfade und \fB\-\-initrd=\fP kann mehrfach angegeben werden\&. .PP Es werden zusätzliche Abschnitte in den UKI eingefügt, entweder automatisch oder nur falls eine bestimmte Option bereitgestellt wird\&. Siehe die nachfolgende Besprechung von \fICmdline=\fP/\fB\-\-cmdline=\fP, \fIOSRelease=\fP/\fB\-\-os\-release=\fP, \fIDeviceTree=\fP/\fB\-\-devicetree=\fP, \fISplash=\fP/\fB\-\-splash=\fP, \fIPCRPKey=\fP/\fB\-\-pcrpkey=\fP, \fIUname=\fP/\fB\-\-uname=\fP, \fISBAT=\fP/\fB\-\-sbat=\fP und \fB\-\-section=\fP\&. .PP \fBukify\fP kann auch zum Zusammenbau eines PE\-Programmabbilds verwandt werden, das nicht ausführbar ist, aber zusätzliche Daten enthält, beispielsweise zusätzliche Kernelbefehlszeileneinträge\&. .PP Falls über die Optionen \fIPCRPrivateKey=\fP/\fB\-\-pcr\-private\-key=\fP und \fIPCRPublicKey=\fP/\fB\-\-pcr\-public\-key=\fP PCR\-Signierschlüssel bereitgestellt werden, werden PCR\-Werte, die nach dem Systemstart mit dem angegebenen Kernel, der Initrd und anderen Abschnitten vorkommen, berechnet, signiert und in das UKI eingebettet\&. Diese Berechnung und Signatur erfolgt mit \fBsystemd\-measure\fP(1)\&. .PP Die Berechnung von PCR\-Werten erfolgt für bestimmte Systemstartphasenpfade\&. Diese können mit der Option \fIPhases=\fP/\fB\-\-phases=\fP angegeben werden\&. Falls nicht angegeben, wird die von \fBsystemd\-measure\fP(1) bereitgestellte Vorgabe verwandt\&. Es ist auch möglich, die Argumente \fIPCRPrivateKey=\fP/\fB\-\-pcr\-private\-key=\fP, \fIPCRPublicKey=\fP/\fB\-\-pcr\-public\-key=\fP und \fIPhases=\fP/\fB\-\-phases=\fP mehr als einmal anzugeben\&. Die Signaturen erfolgen dann mit jedem der angegebenen Schlüssel\&. Wird auf der Befehlszeile sowohl \fB\-\-phases=\fP als auch \fB\-\-pcr\-private\-key=\fP verwandt, müssen sie beide gleich häufig angegeben werden und der n\-te Systemstartphasenpfad wird mit dem n\-ten Schlüssel signiert\&. Dies kann zur Erstellung verschiedener Vertrauensrichtlinien für die verschiedenen Phasen des Systemstarts verwandt werden\&. In der Konfigurationsdatei werden \fIPCRPrivateKey=\fP, \fIPCRPublicKey=\fP und \fIPhases=\fP in verschiedene Abschnitte gruppiert, die getrennte Systemstartphasen beschreiben\&. .PP Falls ein SecureBoot\-Signaturschlüssel über die Option \fISecureBootPrivateKey=\fP/\fB\-\-secureboot\-private\-key=\fP bereitgestellt ist, wird das resultierende PE\-Programm als Ganzes damit signiert\&. Damit wird ermöglicht, dass SecureBoot dem gesamten UKI vertraut\&. Siehe auch die Erläuterung der automatischen Registrierung in \fBsystemd\-boot\fP(7)\&. .PP Falls der Rumpf oder der Kernel einen Abschnitt »\&.sbat« enthält, werden sie im UKI zusammengeführt, so dass Widerrufsaktualisierungen, die eines davon betreffen, berücksichtigt werden, wenn das UKI vom Shim geladen wird\&. Für weitere Informationen zu SBAT siehe die \m[blue]\fBShim\-Dokumentation\fP\m[]\&\s-2\u[2]\d\s+2\&. .SS genkey .PP Dieser Befehl erstellt die Schlüssel für die PCR\-Signatur und die Schlüssel und Zertifikate, die für das SecureBoot\-Signieren verwandt werden\&. Die gleichen Konfigurationsoptionen, die bestimmen, welche Schlüssel und in welchen Pfaden für die Signatur benötigt werden, wenn \fBbuild\fP verwandt wird, bestimmen hier, welche Schlüssel erstellt werden\&. Siehe die nachfolgende Diskussion von \fIPCRPrivateKey=\fP/\fB\-\-pcr\-private\-key=\fP, \fIPCRPublicKey=\fP/\fB\-\-pcr\-public\-key=\fP und \fISecureBootPrivateKey=\fP/\fB\-\-secureboot\-private\-key=\fP\&. .PP Die Ausgabedatei darf nicht existieren\&. .SS inspect .PP Zeigt Informationen über die Abschnitte in dem oder den angegebene(n) Programme(n)\&. Falls \fB\-\-all\fP angegeben ist, werden alle Abschnitte angezeigt\&. Falls andernfalls die Option \fB\-\-section=\fP mindestens einmal angegeben ist, werden nur diese Abschnitte angezeigt\&. Andernfalls werden nur gut bekannte Abschnitte angezeigt, die typischwerweise in eine UKI eingebunden werden, angezeigt\&. Für jeden Abschnitt wird ihr Name, ihre Größe und ihr SHA256\-Hash angezeigt\&. Für Textabschnitte werden die Inhalte angezeigt\&. .PP Siehe auch die Beschreibung von \fB\-j\fP/\fB\-\-json=\fP und \fB\-\-section=\fP\&. .SH KONFIGURATIONSEINSTELLUNGEN .PP Einstellungen können in Konfigurationsdateien vorkommen (die Syntax mit \fIEineEinstellung=\fP\fIWert\fP) und auf der Befehlszeile (die Syntax mit \fB\-\-eine\-Einstellung=\fP\fIWert\fP)\&. Für einige Befehlszeilenparameter ist auch eine einbuchstabige Kurzform verfügbar\&. In den Konfigurationsdateien muss die Einstellung in dem geeigneten Abschnitt sein, daher sind die Beschreibungen nachfolgend nach Abschnitten gruppiert\&. Wenn die gleiche Einstellung in der Konfigurationsdatei und auf der Befehlszeile vorkommt, hat im Allgemeinen die Befehlszeileneinstellung die höhere Priorität und überschreibt die Konfigurationsdateieinstellungen vollständig\&. Falls sich eine Einstellung anders verhält, ist dies nachfolgend beschrieben\&. .PP Falls keine Konfigurationsoption mit der Option \fB\-\-config=\fP\fIPFAD\fP bereitgestellt wird, wird \fBukify\fP versuchen, nach einer Standardkonfigurationsdatei in den folgenden Pfaden in dieser Reihenfolge zu suchen: /run/systemd/ukify\&.conf, /etc/systemd/ukify\&.conf, /usr/local/lib/systemd/ukify\&.conf und /usr/lib/systemd/ukify\&.conf und dann die erste gefundene laden\&. \fBukify\fP wird normal fortfahren, falls keine Konfigurationsdatei angegeben und keine in der Vorgabe gefunden wurde\&. .PP Die positionsabhängigen Argumente \fILINUX\fP und \fIINITRD\fP oder die äquivalenten Einstellungen \fILinux=\fP und \fIInitrd=\fP sind optional\&. Falls mehr als ein Initrd angegeben ist, werden sie alle in einen einzigen PE\-Abschnitt kombiniert\&. Dies ist zum Beispiel nützlich, um der eigentlichen Initrd Microcode voranzustellen\&. .PP Die folgenden Optionen und Einstellungen werden verstanden: .SS "Reine Befehlszeilenoptionen" .PP \fB\-\-config=\fP\fIPFAD\fP .RS 4 Lädt die Konfiguration aus der angegebenen Konfigurationsdatei\&. Im Allgemeinen sind in der Konfigurationsdatei angegebene Einstellungen gegenüber den Einstellungen als Optionen nachrangig\&. In den Fällen, in denen die Befehlszeilenoption die Einstellung aus der Konfigurationsdatei nicht vollständig außer Kraft setzt, ist dies in der Beschreibung der entsprechenden Optionen explizit erwähnt\&. .sp Hinzugefügt in Version 254\&. .RE .PP \fB\-\-measure\fP, \fB\-\-no\-measure\fP .RS 4 Aktiviert oder deaktiviert einen Aufruf von \fBsystemd\-measure\fP(1), um vorberechnete PCR\-Werte auszugeben\&. Standardmäßig falsch\&. .sp Hinzugefügt in Version 253\&. .RE .PP \fB\-\-section=\fP\fINAME\fP\fB:\fP\fITEXT\fP\fB|\fP\fI@PFAD\fP, \fB\-\-section=\fP\fINAME\fP\fB:\fP\fBtext|binary\fP\fB[@\fP\fIPFAD\fP] .RS 4 Für alle Unterbefehle außer \fBinspect\fP wird die erste Syntax verwandt\&. Gibt einen beliebigen zusätzlichen Abschnitt »\fINAME\fP« an\&. Das Argument kann eine wörtliche Zeichenkette sein oder @, gefolgt von einem Pfadnamen\&. Diese Option kann mehr als einmal angegeben werden\&. Jeder auf diese Weise angegebene Abschnitt wird (in der Reihenfolge) vor dem Abschnitt »\&.linux«, der immer der letzte ist, eingefügt\&. .sp Für den Unterbefehl \fBinspect\fP wird die zweite Syntax verwandt\&. Der Abschnitt \fINAME\fP wird (falls gefunden) untersucht\&. Falls das zweite Argument »text« ist, dann wird der Inhalt angezeigt\&. Falls das dritte Argument angegeben ist, werden die Inhalte in die Datei \fIPFAD\fP gespeichert\&. .sp Beachten Sie, dass der Name unverändert verwandt wird und falls der Abschnittsname mit einem Punkt beginnen sollte, er in \fINAME\fP aufgenommen werden muss\&. .sp Hinzugefügt in Version 253\&. .RE .PP \fB\-\-tools=\fP\fIVERZ\fP .RS 4 Gibt eines oder mehrere Verzeichnisse mit Hilfswerkzeugen an\&. \fBukify\fP wird zuerst in diesen Verzeichnissen nach Hilfswerkzeugen schauen und, falls sie dort nicht gefunden werden, sie auf die übliche Weise aus \fI$PATH\fP laden\&. .sp Hinzugefügt in Version 253\&. .RE .PP \fB\-\-output=\fP\fIDATEINAME\fP .RS 4 Der Ausgabedateiname\&. Falls nicht angegeben, wird der Name des Arguments \fILINUX\fP mit der Endung »\&.unsigned\&.efi« oder »\&.signed\&.efi« verwandt, abhängig davon, ob die Signatur für SecureBoot durchgeführt wurde\&. .sp Hinzugefügt in Version 253\&. .RE .PP \fB\-\-summary\fP .RS 4 Gibt eine Zusammenfassung der geladenen Konfiguration aus und beendet das Programm\&. Dies ist nützlich, um zu überprüfen, wie die Optionen aus der Konfigurationsdatei und der Befehlszeile kombiniert werden\&. .sp Hinzugefügt in Version 254\&. .RE .PP \fB\-\-all\fP .RS 4 Gibt (mit dem Unterbefehl \fBinspect\fP) alle Abschnitte aus\&. .sp Hinzugefügt in Version 255\&. .RE .PP \fB\-\-json\fP .RS 4 Erstellt (mit dem Unterbefehl \fBinspect\fP) JSON\-Ausgabe\&. .sp Hinzugefügt in Version 255\&. .RE .PP \fB\-h\fP, \fB\-\-help\fP .RS 4 Zeigt einen kurzen Hilfetext an und beendet das Programm\&. .RE .PP \fB\-\-version\fP .RS 4 Zeigt eine kurze Versionszeichenkette an und beendet das Programm\&. .RE .SS "Abschnitt [UKI]" .PP \fILinux=\fP\fILINUX\fP, \fB\-\-linux=\fP\fILINUX\fP .RS 4 Ein Pfad zu dem Kernelprogramm\&. .sp Hinzugefügt in Version 254\&. .RE .PP \fIInitrd=\fP\fIINITRD\fP\fI…\fP, \fB\-\-initrd=\fP\fILINUX\fP .RS 4 Null oder mehr Initrd\-Pfade\&. In der Konfigurationsdatei werden Einträge durch Leerraum getrennt\&. Die Initrds werden in der Reihenfolge der Angabe kombiniert, wobei die in der Konfigurationsdatei angegebenen Initrds zuerst kommen\&. .sp Hinzugefügt in Version 254\&. .RE .PP \fICmdline=\fP\fITEXT\fP\fI|\fP\fI@PFAD\fP, \fB\-\-cmdline=\fP\fITEXT\fP\fB|\fP\fI@PFAD\fP .RS 4 Die Kernelbefehlszeile (der Abschnitt »\&.cmdline«)\&. Das Argument kann eine wörtliche Zeichenkette sein oder »@«, gefolgt von einem Pfadnamen\&. Falls dies nicht angegeben ist, wird keine Befehlszeile eingebettet\&. .sp Hinzugefügt in Version 253\&. .RE .PP \fIOSRelease=\fP\fITEXT\fP\fI|\fP\fI@PFAD\fP, \fB\-\-os\-release=\fP\fITEXT\fP\fB|\fP\fI@PFAD\fP .RS 4 Die Betriebssystem\-Veröffentlichungsbeschreibung (der Abschnitt »\&.osrel«)\&. Das Argument kann eine wörtliche Zeichenkette oder »@«, gefolgt von einem Pfadnamen, sein\&. Falls dies nicht angegeben ist, wird die Datei \fBos\-release\fP(5) vom Rechnersystem genommen\&. .sp Hinzugefügt in Version 253\&. .RE .PP \fIDeviceTree=\fP\fIPFAD\fP, \fB\-\-devicetree=\fP\fIPFAD\fP .RS 4 Die Devicetree\-Beschreibung (der Abschnitt »\&.dtb«)\&. Das Argument ist ein Pfad zu einer kompilierten binären DeviceTree\-Datei\&. Falls dies nicht angegeben ist, wird der Abschnitt nicht vorhanden sein\&. .sp Hinzugefügt in Version 253\&. .RE .PP \fISplash=\fP\fIPFAD\fP, \fB\-\-splash=\fP\fIPFAD\fP .RS 4 Ein Bild, das während des Systemstarts angezeigt werden soll (der Abschnitt »\&.splash«)\&. Das Argument ist ein Pfad zu einer BMP\-Datei\&. Falls dies nicht angegeben ist, wird der Abschnitt nicht vorhanden sein\&. .sp Hinzugefügt in Version 253\&. .RE .PP \fIPCRPKey=\fP\fIPFAD\fP, \fB\-\-pcrpkey=\fP\fIPFAD\fP .RS 4 Ein Pfad zu einem öffentlichen Schlüssel, der im Abschnitt »\&.pcrpkey« eingebettet werden soll\&. Falls nicht angegeben und genau ein Argument \fIPCRPublicKey=\fP/\fB\-\-pcr\-public\-key=\fP vorhanden ist, wird dieser Schlüssel verwandt\&. Andernfalls wird dieser Abschnitt nicht vorhanden sein\&. .sp Hinzugefügt in Version 253\&. .RE .PP \fIUname=\fP\fIVERSION\fP, \fB\-\-uname=\fP\fIVERSION\fP .RS 4 Gibt die Kernelversion an (wie in \fBuname \-r\fP, den Abschnitt »\&.uname«)\&. Falls nicht angegeben, wird versucht, die Versionszeichenkette aus dem Kernelabbild auszulesen\&. Es wird empfohlen, sie explizit zu übergeben, wenn sie bekannt ist, da das Auslesen auf Heuristiken basiert und nicht sehr zuverlässig ist\&. Falls nicht angegeben und das Auslesen fehlschlägt, wird der Abschnitt nicht vorhanden sein\&. .sp Hinzugefügt in Version 253\&. .RE .PP \fIPCRBanks=\fP\fIPFAD\fP, \fB\-\-pcr\-banks=\fP\fIPFAD\fP .RS 4 Eine Kommata\- oder Leerraum\-getrennte Liste von PCR\-Bänken, für die eine Richtlinie signiert werden soll\&. Falls nicht vorhanden, werden alle bekannten Bänke verwandt (»sha1«, »sha256«, »sha384«, »sha512«)\&. Dies wird fehlschlagen, wenn das vom System nicht unterstützt wird\&. .sp Hinzugefügt in Version 253\&. .RE .PP \fISecureBootSigningTool=\fP\fISIGNIERER\fP, \fB\-\-signtool=\fP\fISIGNIERER\fP .RS 4 Ob »sbsign« oder »pesign« verwandt werden soll\&. Abhängig von dieser Wahl werden verschiedene Parameter benötigt, um ein Abbild zu signieren\&. Standardmäßig »sbsign«\&. .sp Hinzugefügt in Version 254\&. .RE .PP \fISecureBootPrivateKey=\fP\fISB_SCHLÜSSEL\fP, \fB\-\-secureboot\-private\-key=\fP\fISB_SCHLÜSSEL\fP .RS 4 Ein Pfad zu einem privaten Schlüssel, der zum Signieren des resultierenden Programms verwandt wird\&. Falls die Option \fISigningEngine=\fP/\fB\-\-signing\-engine=\fP verwandt wird, kann dies auch eine Engine\-spezifische Festsetzung sein\&. Diese Option wird von \fISecureBootSigningTool=sbsign\fP/\fB\-\-signtool=sbsign\fP benötigt\&. .sp Hinzugefügt in Version 253\&. .RE .PP \fISecureBootCertificate=\fP\fISB_ZERT\fP, \fB\-\-secureboot\-certificate=\fP\fISB_ZERT\fP .RS 4 Ein Pfad zu einem Zertifikat, das zum Signieren des resultierenden Programms verwandt wird\&. Falls die Option \fISigningEngine=\fP/\fB\-\-signing\-engine=\fP verwandt wird, kann dies auch eine Engine\-spezifische Festsetzung sein\&. Diese Option wird von \fISecureBootSigningTool=sbsign\fP/\fB\-\-signtool=sbsign\fP benötigt\&. .sp Hinzugefügt in Version 253\&. .RE .PP \fISecureBootCertificateDir=\fP\fISB_PFAD\fP, \fB\-\-secureboot\-certificate\-dir=\fP\fISB_PFAD\fP .RS 4 Ein Pfad zu einem NSS\-Zertifikatsdatenbankverzeichnis, das zum Signieren des resultierenden Programms verwandt wird\&. Wird wirksam, wenn \fISecureBootSigningTool=pesign\fP/\fB\-\-signtool=pesign\fP verwandt wird\&. Standardmäßig /etc/pki/pesign\&. .sp Hinzugefügt in Version 254\&. .RE .PP \fISecureBootCertificateName=\fP\fISB_ZERTNAME\fP, \fB\-\-secureboot\-certificate\-name=\fP\fISB_ZERTNAME\fP .RS 4 Der Name des NSS\-Zertifikatsdatenbankeintrags, der zur Signierung des entstehenden Programms verwandt werden soll\&. Diese Option wird von \fISecureBootSigningTool=pesign\fP/\fB\-\-signtool=pesign\fP verlangt\&. .sp Hinzugefügt in Version 254\&. .RE .PP \fISecureBootCertificateValidity=\fP\fITAGE\fP, \fB\-\-secureboot\-certificate\-validity=\fP\fITAGE\fP .RS 4 Gültigkeitsdauer (in Tagen) für ein durch \fBgenkey\fP erstelltes Zertifikat\&. Standardmäßig 3650, d\&.h\&. 10 Jahre\&. .sp Hinzugefügt in Version 254\&. .RE .PP \fISigningEngine=\fP\fIENGINE\fP, \fB\-\-signing\-engine=\fP\fIENGINE\fP .RS 4 Eine »Engine« zum Signieren des resultierenden Programms\&. Diese Option wird derzeit unverändert an die Option \fB\-\-engine=\fP von \fBsbsign\fP(1) weitergegeben\&. .sp Hinzugefügt in Version 253\&. .RE .PP \fISignKernel=\fP\fILOGISCH\fP, \fB\-\-sign\-kernel\fP, \fB\-\-no\-sign\-kernel\fP .RS 4 Setzt die Erkennung, ob das Linux\-Programm selbst vor dem Einbetten in das kombinierte Abbild signiert werden soll, außer Kraft\&. Falls nicht angegeben, wird es signiert, falls ein SecureBoot\-Signaturschlüssel über die Option \fISecureBootPrivateKey=\fP/\fB\-\-secureboot\-private\-key=\fP bereitgestellt wird und das Programm noch nicht signiert wurde\&. Falls \fB\-\-sign\-kernel\fP wahr ist und das Programm bereits signiert wurde, wird die Signatur trotzdem angehängt\&. .sp Hinzugefügt in Version 253\&. .RE .PP \fISBAT=\fP\fITEXT\fP\fI|\fP\fI@PFAD\fP, \fB\-\-sbat=\fP\fITEXT\fP\fB|\fP\fI@PFAD\fP .RS 4 Dem UKI oder der Ergänzung zugeordnete SBAT\-Metadaten\&. SBAT\-Richtlinien sind zum Widerruf von Gruppen von UKIs oder Ergänzungen mit einer einzelnen, statischen Richtlinienaktualisierung nützlich, die keinen Platz in DBX/MOKX belegt\&. Falls nicht händisch angegeben, wird ein Standardmetadateneintrag bestehend aus »uki,1,UKI,uki,1,https://uapi\-group\&.org/specifications/specs/unified_kernel_image/" für UKIs und "uki\-addon,1,UKI Addon,addon,1,https://www\&.freedesktop\&.org/software/systemd/man/latest/systemd\-stub\&.html" für Ergänzungen verwandt, um sicherzustellen, dass es immer möglich ist, sie zu widerrufen\&. Für weitere Informationen über SBAT siehe die \m[blue]\fBShim\-Dokumentation\fP\m[]\&\s-2\u[2]\d\s+2\&. .sp Hinzugefügt in Version 254\&. .RE .SS "[PCRSignature:\fINAME\fP\fR] Abschnitt\fP" .PP In der Konfigurationsdatei werden diese Optionen nach Abschnitten gruppiert\&. Auf der Befehlszeile müssen sie in der gleichen Reihenfolge angegeben werden\&. Die in beiden Quellen angegebenen Abschnitte werden kombiniert\&. .PP \fIPCRPrivateKey=\fP\fIPFAD\fP, \fB\-\-pcr\-private\-key=\fP\fIPFAD\fP .RS 4 Ein privater Schlüssel zum Signieren von PCR\-Richtlinien\&. Auf der Befehlszeile darf diese Option mehr als einmal angegeben werden\&. Dann werden mehrere Signaturen erstellt\&. .sp Hinzugefügt in Version 253\&. .RE .PP \fIPCRPublicKey=\fP\fIPFAD\fP, \fB\-\-pcr\-public\-key=\fP\fIPFAD\fP .RS 4 Ein öffentlicher Schlüssel, der zum Signieren von PCR\-Richtlinien verwandt wird\&. .sp Auf der Befehlszeile darf diese Option mehr als einmal angegeben werden, ähnlich wie die Option \fB\-\-pcr\-private\-key=\fP\&. Falls nicht vorhanden werden die öffentlichen Schlüssel aus den privaten Schlüsseln abgeleitet\&. Falls auf der Befehlszeile vorhanden, muss diese Option genauso oft wie die Option \fB\-\-pcr\-private\-key=\fP angegeben werden\&. .sp Hinzugefügt in Version 253\&. .RE .PP \fIPhases=\fP\fILISTE\fP, \fB\-\-phases=\fP\fILISTE\fP .RS 4 Eine durch Kommata oder Leerzeichen getrennte Liste von Doppelpunkt getrennten Phasenpfaden, für die eine Richtlinie signiert werden soll\&. Jede Gruppe von Systemstartphasenpfaden wird mit dem entsprechenen privaten Schlüssel signiert\&. Falls nicht vorhanden, wird die Vorgabe von \fBsystemd\-measure\fP(1) verwandt\&. .sp Wenn dieses Argument auf der Befehlszeile vorhanden ist, muss es genauso oft wie die Option \fB\-\-pcr\-private\-key=\fP vorkommen\&. .sp Hinzugefügt in Version 253\&. .RE .SH BEISPIELE .PP \fBBeispiel\ \&1.\ \&Minimaler Aufruf\fP .sp .if n \{\ .RS 4 .\} .nf $ ukify build \e \-\-linux=/lib/modules/6\&.0\&.9\-300\&.fc37\&.x86_64/vmlinuz \e \-\-initrd=/ein/Pfad/initramfs\-6\&.0\&.9\-300\&.fc37\&.x86_64\&.img \e \-\-cmdline=\*(Aqquiet rw\*(Aq .fi .if n \{\ .RE .\} .PP Dies erstellt ein unsigniertes UKI \&./vmlinuz\&.unsigned\&.efi\&. .PP \fBBeispiel\ \&2.\ \&Mit allem Schnickschnack\fP .sp .if n \{\ .RS 4 .\} .nf $ ukify build \e \-\-linux=/lib/modules/6\&.0\&.9\-300\&.fc37\&.x86_64/vmlinuz \e \-\-initrd=early_cpio \e \-\-initrd=/ein/Pfad/initramfs\-6\&.0\&.9\-300\&.fc37\&.x86_64\&.img \e \-\-sbat=\*(Aqsbat,1,SBAT Version,sbat,1,https://github\&.com/rhboot/shim/blob/main/SBAT\&.md uki\&.author\&.myimage,1,UKI for System,uki\&.author\&.myimage,1,https://uapi\-group\&.org/specifications/specs/unified_kernel_image/\*(Aq \e \-\-pcr\-private\-key=pcr\-private\-initrd\-key\&.pem \e \-\-pcr\-public\-key=pcr\-public\-initrd\-key\&.pem \e \-\-phases=\*(Aqenter\-initrd\*(Aq \e \-\-pcr\-private\-key=pcr\-private\-system\-key\&.pem \e \-\-pcr\-public\-key=pcr\-public\-system\-key\&.pem \e \-\-phases=\*(Aqenter\-initrd:leave\-initrd enter\-initrd:leave\-initrd:sysinit \e enter\-initrd:leave\-initrd:sysinit:ready\*(Aq \e \-\-pcr\-banks=sha384,sha512 \e \-\-secureboot\-private\-key=sb\&.key \e \-\-secureboot\-certificate=sb\&.cert \e \-\-sign\-kernel \e \-\-cmdline=\*(Aqquiet rw rhgb\*(Aq .fi .if n \{\ .RE .\} .PP Dies erstellt ein signiertes UKI \&./vmlinuz\&.signed\&.efi\&. Der Initrd\-Abschnitt enthält zwei aneinandergehängte Teile, early_cpio und initramfs\-6\&.0\&.9\-300\&.fc37\&.x86_64\&.img\&. Die in dem Abschnitt »\&.pcrsig« eingebettete Richtlinie wird für die Initrd mit dem Schlüssel pcr\-private\-initrd\-key\&.pem signiert (die Phase \fBenter\-initrd\fP) und für das Hauptsystem (Phase \fBleave\-initrd\fP, \fBsysinit\fP, \fBready\fP) mit dem Schlüssel pcr\-private\-system\-key\&.pem\&. Das Linux\-Programm und das resultierende kombinierte Abbild wird mit dem SecureBoot\-Schlüssel sb\&.key signiert\&. .PP \fBBeispiel\ \&3.\ \&Mit allem Schnickschnack, über eine Konfigurationsdatei\fP .PP Dies ist das gleiche wie das vorherige Beispiel, diesmal wird die Konfiguration aber in einer Datei gespeichert: .sp .if n \{\ .RS 4 .\} .nf $ cat ukify\&.conf [UKI] Initrd=early_cpio Cmdline=quiet rw rhgb SecureBootPrivateKey=sb\&.key SecureBootCertificate=sb\&.cert SignKernel=yes PCRBanks=sha384,sha512 [PCRSignature:initrd] PCRPrivateKey=pcr\-private\-initrd\-key\&.pem PCRPublicKey=pcr\-public\-initrd\-key\&.pem Phases=enter\-initrd [PCRSignature:system] PCRPrivateKey=pcr\-private\-system\-key\&.pem PCRPublicKey=pcr\-public\-system\-key\&.pem Phases=enter\-initrd:leave\-initrd enter\-initrd:leave\-initrd:sysinit enter\-initrd:leave\-initrd:sysinit:ready $ ukify \-c ukify\&.conf build \e \-\-linux=/lib/modules/6\&.0\&.9\-300\&.fc37\&.x86_64/vmlinuz \e \-\-initrd=/ein/Pfad/initramfs\-6\&.0\&.9\-300\&.fc37\&.x86_64\&.img .fi .if n \{\ .RE .\} .PP Eine »initrd« (early_cpio) wird in der Konfigurationsdatei angegeben und die andere Initrd (initramfs\-6\&.0\&.9\-300\&.fc37\&.x86_64\&.img) wird auf der Befehlszeile angegeben\&. Dies könnte beispielsweise nützlich sein, wenn die erste Initrd Mikrocode für die CPU enthält und bei Änderungen der Kernelversion nicht aktualisiert werden muss, anders als die eigentliche Initrd\&. .PP \fBBeispiel\ \&4.\ \&Kernelbefehlszeile, zusätzlicher PE\fP .sp .if n \{\ .RS 4 .\} .nf ukify build \e \-\-secureboot\-private\-key=sb\&.key \e \-\-secureboot\-certificate=sb\&.cert \e \-\-cmdline=\*(Aqdebug\*(Aq \e \-\-sbat=\*(Aqsbat,1,SBAT Version,sbat,1,https://github\&.com/rhboot/shim/blob/main/SBAT\&.md uki\-addon\&.author,1,UKI Addon for System,uki\-addon\&.author,1,https://www\&.freedesktop\&.org/software/systemd/man/systemd\-stub\&.html\*(Aq \-\-output=debug\&.cmdline .fi .if n \{\ .RE .\} .PP Dies erstellt ein signiertes PE\-Programm, das den zusätzlichen Kernelbefehlszeilenparameter »debug« mit SBAT\-Metadaten, die sich auf den Eigentümer der Ergänzung beziehen, enthält\&. .PP \fBBeispiel\ \&5.\ \&Signierrichtlinien entscheiden und Zertifikate und Schlüssel erstellen\fP .PP Zuerst wird eine Konfigurationsdatei erstellt, die angibt, welche Signaturen erstellt werden sollen: .sp .if n \{\ .RS 4 .\} .nf # cat >/etc/kernel/uki\&.conf < erstellt. .PP Diese Übersetzung ist Freie Dokumentation; lesen Sie die .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3 .UE oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen. .PP Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die .MT debian-l10n-german@lists.debian.org Mailingliste der Übersetzer .ME .