SYSTEMD-IMPORT-GENERATOR(8)

BEZEICHNUNG
systemd-import-generator - Generator zum automatischen Herunterladen von Plattenabbildern beim Systemstart

ÜBERSICHT

/usr/lib/systemd/system-generators/systemd-import-generator

BESCHREIBUNG

systemd-import-generator kann zum automatischen Herunterladen von Plattenabbildern (Tarbällen oder DDIs) mittels systemd-importd.service(8) beim Systemstart verwandt werden, basierend auf Parametern auf der Kernelbefehlszeile oder mittels Systemzugangsberechtigungen. Dies ist zum automatischen Einsatz bei systemd-confext(8)-, systemd-sysext(8)-, systemd-nspawn(1)/ systemd-vmspawn(1)- oder systemd-portabled.service(8)-Abbildern beim Systemstart nützlich. Dies stellt Funktionalität äquivalent zu importctl(1) bereit, auf sie kann aber mittels Kernelbefehlszeile und Systemzugangsberechtigungen zugegriffen werden.

systemd-import-generator implementiert systemd.generator(7).

KERNEL-BEFEHLSZEILE

systemd-import-generator versteht die nachfolgenden kernel-command-line(7)-Parameter:

systemd.pull=
    Diese Option akzeptiert ein durch Doppelpunkte getrenntes Tripplet von Optionszeichenkette, lokalen Zielabbildnamen und ferner URL. Der lokale Zielabbildname kann durch eine leere Zeichenkette festgelegt werden; in diesem Fall wird der Name aus der angegebenen fernen URL abgeleitet. Die ferne URL muss eines der Schemata »http://«, »https://«, »file://« nutzen. Die Optionszeichenkette selbst ist eine Kommata-getrennte Liste von Optionen:

    rw, ro
        Steuert, ob das lokale Abbild als schreibgeschützt markiert werden soll. Falls nicht angegeben, ist die Vorgabe für den Schreibschutz aus.

        Hinzugefügt in Version 257.

    verify=
        Steuert, ob der Download kryptographisch validiert werden soll, bevor er in situ installiert wird. Akzeptiert entweder »no«, »checksum« oder »signature« (die Vorgabe, falls nicht angegeben). Zu Details siehe --verify= von importctl(1).

        Hinzugefügt in Version 257.

    sysext, confext, machine, portable
        Steuert die zu herunterladende Abbildklasse und damit letztendlich das Zielverzeichnis für das Abbild. Abhängig von dieser Wahl wird das Zielverzeichnis var/lib/extensions/, /var/lib/confexts/, /var/lib/machines/ oder /var/lib/portables/ ausgewählt.

        Es muss genau eine dieser Optionen angegeben werden.

        Hinzugefügt in Version 257.

    tar, raw
        Steuert den Typ der herunterzuladenen Ressource, d.h. einen (möglicherweise komprimierten) Tarball, der in einen Dateisystembaum entpackt werden muss oder ein (möglicherweise komprimiertes) rohes Plattenabbild (DDI).

        Es muss genau eine dieser Optionen angegeben werden.

        Hinzugefügt in Version 257.

    blockdev
        Falls diese Option angegeben ist, wird das heruntergeladene Abbild nach Abschluss an das Loopback-Blockgerät angehängt (mittels systemd-loop@.service). Dies erlaubt den Systemstart von heruntergeladenen Plattenabbildern. Dies wird nur für »rohe« Plattenabbilder unterstützt.

        Wenn diese Option mit dem Zweck des Einhängens eines Plattenabbildes, das der UAPI.3-Spezifikation für auffindbare Plattenabbilder[1] folgt, als Wurzeldateisystem verwandt wird und die automatische GPT-Partitionserkennungslogik, wie sie durch systemd-gpt-auto-generator(8) implementiert ist, es verarbeiten soll, dann ist die Angabe von »rootdisk« als lokalen Namen für den Import wichtig. Desweiteren muss »root=gpt-auto« auf der Kernelbefehlszeile explizit angegeben werden. Auch muss der Befehlszeilenoption »systemd.pull=« »rd.« vorangestellt werden, um sicherzustellen, dass sie bereits in der anfänglichen RAM-Platte (Initrd) ausgeführt wird, siehe auch unten.

        Hinzugefügt in Version 258.

    bootorigin
        Falls diese Option angegeben ist, kann anstatt der URL ein einfacher Dateiname angegeben werden. Falls das System mittel UEFI-HTTP-Netzwerk-Systemstart gestartet wird, wird die letzte Komponente der Netzwerk-Systemstart-Ursprungs-URL durch diesen Dateinamen ersetzt und als heruntergeladene Quelle betrachtet. Dies erlaubt es damit, die URLs für Plattenabbilder automatisch aus den ursprünglichen Systemstart-URLs abzuleiten, die zum Aufruf des Kernels oder des Systemstartprogramms verwandt werden.

        Falls diese Option angegeben ist und das System nicht wirklich mittels UEFI-HTTP-Netzwerk-Systemstart gestartet wird, wird das Herunterladen ohne Probleme übersprungen. Mit anderen Worten gesagt, ist es ohne weitere Veränderungen möglich, ein Initrd-Abbild zusammenzustellen, das von einer lokalen Platte startet, falls diese verfügbar ist, oder von einem heruntergeladenen Plattenabbild, falls es über Netzwerk-Systemstart verwandt wird.

        Hinzugefügt in Version 258.

    runtime=
        Akzeptiert ein logisches Argument. Falls auf true gesetzt, wird das Abbild unterhalb der Hierarchie /run/ heruntergeladen und falls auf false gesetzt, unterhalb der Hierarchie /var/lib/. Falls nicht angegeben, ist die Vorgabe true in der anfänglichen RAM-Platte (Initrd) und false auf dem Hauptsystem.

        Hinzugefügt in Version 258.

    Hinzugefügt in Version 257.

systemd.pull.success_action=, systemd.pull.failure_action=
    Steuert, ob eine Aktion wie reboot, power-off und ähnliches nach erfolgreichem oder nicht erfolgreichem Abschluss des Herunterladens ausgeführt werden soll. Siehe SuccessAction=/FailureAction= für systemd.unit(5) zu Details über die möglichen Aktionen. Falls nicht angegeben, erfolgt keine Aktion und das System wird ganz normal mit dem Systemstart fortfahren.

    Hinzugefügt in Version 257.

Diese Kernelbefehlszeilenoptionen werden nur auf dem Hauptsystem ausgewertet. Falls diesen Optionen »rd.« vorangestellt werden, werden sie stattdessen durch die anfängliche RAM-Platte (Initrd) interpretiert.

ZUGANGSBERECHTIGUNGEN

systemd-import-generator unterstützt die Logik der Systemzugangsberechtigungen. Die folgenden Berechtigungen werden verwandt, wenn sie hereingereicht werden:

import.pull
    Diese Zugangsberechtigung sollte eine Textdatei sein, wobei jede Zeile eine Herunterladeaktion referenziert. Jede Zeile sollte das gleiche Format wie der Wert der oben beschriebenen Kernelbefehlszeile systemd.pull= haben.

    Hinzugefügt in Version 257.

BEISPIELE

Beispiel 1. Konfigurationserweiterungen herunterladen

    systemd.pull=raw,confext::https://example.com/meinconfext.raw.gz

Mit einer Kernelbefehlszeilenoption ähnlich der obigen wird ein Konfigurationserweiterungs-DDI automatisch beim Systemstart von der angegebenen URL heruntergeladen, kryptographisch validiert, dekomprimiert und installiert.

Beispiel 2. Systemerweiterungen herunterladen (ohne Validierung)

    systemd.pull=tar,sysext,verify=no::https://example.com/meinsysext.tar.gz

Mit einer Kernelbefehlszeilenoption ähnlich der obigen wird beim Systemstart automatisch ein Systemerweiterungs-Tarball von der angegebenen URL heruntergeladen, dekomprimiert und installiert – ohne kryptographische Validierung. Dies ist zu Entwicklungszwecken in virtuellen Maschinen und Containern nützlich. Warnung: Setzen Sie kein System mit auf dieser Art deaktivierter Validierung ein!

Beispiel 1. Herunterladen eines Wurzelplattenabbildes (roh) in den Speicher, um darein zu starten

    rd.systemd.pull=raw,machine,verify=no,blockdev:image:https://example.com/image.raw.xz root=/dev/disk/by-loop-ref/image.raw-part2

Dies lädt das angegebene Plattenabbild herunter, speichert es lokal unter dem Namen »image« und hängt es an das Loopback-Blockgerät nach Abschluss an. Es startet dann von der zweiten Partition im Abbild.

Beispiel 4. Starten in ein Plattenabbild (roh), mit einer URL, die aus UEFI-HTTP-Netzwerk-Systemstarten abgeleitet ist

    rd.systemd.pull=raw,machine,verify=no,blockdev,bootorigin:rootdisk:image.raw.xz root=gpt-auto

Dies ist ähnlich zum vorherigen Beispiel, aber diesmal wird die Quell-URL automatisch aus der UEFI-HTTP-Netzwerk-Systemstart-URL abgeleitet. Wird beispielsweise ein UKI aus einer URL »http://example.com/image.efi« gestartet, würde dies dazu führen, dass eine Wurzelplatte aus »http://example.com/image.raw.xz« heruntergeladen würde. Desweiteren verwendet es die systemd-gpt-auto-generator(8)-Logik, um das Wurzeldateisystem aus dem Platenabbild einzuhängen.

Beispiel 5. Starten in ein Plattenabbild (tar), mit einer URL, die aus UEFI-HTTP-Netzwerk-Systemstarten abgeleitet ist

    rd.systemd.pull=tar,machine,verify=no,bootorigin:root:image.tar.xz root=bind:/run/machines/root

Dies ist ähnlich zum vorherigen Beispiel, aber statt eines rohen (d.h. Blockgeräte-basierenden) Plattenabbildes startet das System in einen Tarball, der vom dem Quell-UEFI-Netzwerkserver heruntergeladen wird.

SIEHE AUCH

systemd(1), systemd-importd.service(8), kernel-command-line(7), systemd.system-credentials(7), importctl(1), systemd-loop@.service(8), systemd-gpt-auto-generator(8)

ANMERKUNGEN

1.  UAPI.3-Spezifikation für auffindbare Plattenabbilder
    https://uapi-group.org/specifications/specs/discoverable_disk_image/

Ü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 (https://www.gnu.org/licenses/gpl-3.0.html) 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).