Provided by: manpages-de_4.27.0-1_all bug

BEZEICHNUNG

       sysupdate.features - Definitionsdateien für Optionale Funktionalitäten

ÜBERSICHT

           /etc/sysupdate.d/*.feature
           /run/sysupdate.d/*.feature
           /usr/local/lib/sysupdate.d/*.feature
           /usr/lib/sysupdate.d/*.feature

BESCHREIBUNG

       »Optionale Funktionalitäten« sind Funktionalitäten, die durch systemd-sysupdate(8) bereitgestellt werden,
       die es Distributionen erlauben, einen Satz von sysupdate.d(5)-Übertragungsdefinitionen zu definieren, die
       dazu gedacht sind, vom Systemadministrator aktiviert oder deaktiviert zu werden.

       Wenn eine Funktionalität aktiviert ist, werden zugehörige Übertragungen betrachtet, wenn auf
       Aktualisierungen geprüft und diese heruntergeladen werden, wenn Datenträger bereinigt werden und in allen
       anderen Situationen. Effektiv werden Übertragungen, die zu einer Funktionalität gehören, immer fest mit
       dem Rest ihres Ziels verzahnt aktualisiert. Dies ist der Hauptunterschied zwischen einer Optionalen
       Funktionalität und der Komponente systemd-sysupdate(8). Wenn eine Funktionalität deaktiviert ist, werden
       ihre Übertragungen nicht betrachtet, wenn auf Aktualisierungen geprüft und diese heruntergeladen werden,
       aber systemd-sysupdate(8) wird sie weiterhin betrachten, wenn Datenträger bereinigt werden und in anderen
       Situationen, bei denen die Eigentümerschaft über vorher heruntergeladene Systemressourcen bestimmt werden
       muss. systemd-sysupdate(8) wird alle Instanzen der Übertragungen der Funktionalität bereinigen, wenn sie
       deaktiviert wird und sie damit effektiv deinstallieren.

       Optionale Funktionalitäten werden durch Dateien sysupdate.d/*.feature beschrieben, die nachfolgend
       definiert sind. Übertragungen können mit der Einstellung Features= erklären, dass sie zu einer
       Funktionalität gehören. Funktionalitätsdefinitionen unterstützen Ergänzungsdateien, die am häufigsten
       dazu verwandt werden, die Einstellung Enabled= außer Kraft zu setzen. Sie können auch ausmaskiert werden,
       um die Verfügbarkeit der Funktionalität komplett zu verstecken.

       Jede Datei *.feature enthält einen Abschnitt: »[Feature]«.

[FEATURE]-ABSCHNITTOPTIONEN

       Dieser Abschnitt beschreibt die allgemeinen Eigenschaften dieser Funktionalität.

       Description=
           Eine kurze, menschenlesbare Beschreibung dieser Funktionalität. Dies kann als Kennzeichnung für diese
           Funktionalität verwandt werden, so dass die Zeichenkette mit einer Bedeutung belegt werden sollte,
           die sie von den in sysupdate.d/ verfügbaren Funktionalitäten hervorhebt.

           Hinzugefügt in Version 257.

       Documentation=
           Eine URL, die dem Benutzer gezeigt werden kann, um die Funktionalität zu dokumentieren. Diese
           Einstellung unterstützt Kennzeichnerexpansionen; nachfolgend finden Sie die unterstützten
           Kennzeichner.

           Hinzugefügt in Version 257.

       AppStream=
           Eine URL zu einer AppStream catalog[1]-XML-Datei. Dies kann von Software-Verwaltungsprogrammen (wie
           »GNOME Software« oder »KDE Discover«) verwandt werden, um umfangreiche Metadaten über diese
           Funktionalität bereitzustellen. Dazu gehören Namen, Verlaufsprotokolle, Icons und weiteres. Diese
           Einstellung unterstützt die Expansion von Kennzeichnern; die unterstützten Kennzeichner werden weiter
           unten dargestellt.

           Hinzugefügt in Version 257.

       Enabled=
           Gibt an, ob diese Funktionalität (nicht) aktiviert ist. Falls nicht festgelegt, ist diese
           Funktionalität standardmäßig deaktiviert.

           Hinzugefügt in Version 257.

KENNZEICHNER

       In den Einstellungen Documentation= und AppStream= können Kennzeichner verwandt werden. Es werden die
       Folgenden verstanden:

       Tabelle 1. Verfügbare Kennzeichner
       ┌──────────────┬────────────────────────────────┬───────────────────────────────────────────┐
       │ KennzeichnerBedeutungDetails                                   │
       ├──────────────┼────────────────────────────────┼───────────────────────────────────────────┤
       │ "%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 zur leeren               │
       │              │                                │ Zeichenkette aufgelöst.                   │
       │              │                                │ 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      │ Dies ist entweder /tmp oder der Pfad, auf │
       │              │ Dateien                        │ 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    │ Dies ist entweder /var/tmp oder der Pfad, │
       │              │ dauerhafte temporäre Dateien   │ 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.   │
       └──────────────┴────────────────────────────────┴───────────────────────────────────────────┘

BEISPIELE

       Beispiel 1. Entwicklungswerkzeuge für Abbild-basiertes Betriebssystem

       Als Beispielbetriebssystem wird das in sysupdate.d(5) beschriebene hypothetische »foobarOS« verwandt. Die
       große Mehrheit der Benutzer von foobarOS benötigen keine Compiler, kein Bausystem, Debugger und andere
       solche Entwicklungswerkzeuge als Teil ihres Betriebssystems. Die Entwickler von foobarOS selbst benötigen
       die Verfügbarkeit der Entwicklungswerkzeuge. Daher muss foobarOS ein Systemerweiterungsabbild (siehe
       systemd-sysext(8)) bereitstellen, das diese Entwicklungswerkzeuge enthält, und dieses Abbild muss fest
       verzahnt mit dem zugrundeliegenden Betriebssystem aktualisiert werden. Dies ist ein wunderbarer
       Anwendungsfall für eine optionale Betriebssstemfunktionalität, daher wird sie als solche definiert:

           # /usr/lib/sysupdate.d/devel.feature
           [Feature]
           Description=Entwicklungswerkzeuge
           Documentation=https://developer.example.com/foobarOS/getting-started
           Enabled=false

       Obiges definiert die Funktionalität »devel« und deaktiviert sie standardmäßig. Jetzt wird eine
       Übertragung definiert, die das dieser Funktionalität zuordnet:

           # /usr/lib/sysupdate.d/50-devel.transfer
           [Transfer]
           Features=devel
           ProtectVersion=%A

           [Source]
           Type=url-file
           Path=https://download.example.com/
           MatchPattern=foobarOS_@v_devel.raw.xz

           [Target]
           Type=regular-file
           Path=/var/lib/extensions
           MatchPattern=foobarOS_@v_devel.raw
           Mode=0444
           InstancesMax=2

       Mit diesen zwei Dateien wurde eine Funktionalität namens »devel« erstellt, die bei der Aktivierung die
       geeignete Version von »https://download.example.com/foobarOS_@v_devel.raw.xz« nach
       »/var/lib/extensions/foobarOS_@v_devel.raw« während jeder Betriebssystemaktualisierung herunterlädt und
       entpackt.

       Die Entwickler von foobarOS können die Funktionalität »devel« auf ihren Maschinen durch Erstellung der
       folgenden Ergänzung aktivieren:

           # /etc/sysupdate.d/devel.feature.d/enable.conf
           [Feature]
           Enabled=true

       Beispiel 2. Proprietäre Treiber

       Nehmen wir an, dass die Benutzer von foobarOS eine von der Firma MVISUAL hergestellte GPU verwenden.
       Aufgrund fehlender Dokumentation und Schwierigkeiten beim Nachkonstruieren (»Reverse Engineering«) der
       Hardware, können die Open-Source-Treiber für MVISUAL GPUs die verfügbare Graphik- und Rechenleistung
       nicht vernünftig ausnutzen. MVISUAL stellt einen proprietären Treiber für diese Karten bereit, der
       weiterverteilt werden darf und die Entwickler von foobarOS verteilen ihn weiter, um die Bedürfnisse ihrer
       Benutzer zu berücksichtigen.

       Der Treiber MVISUAL enthält eine Reihe von verschiedenen Teilen, die zum Funktionieren installiert werden
       müssen: eine UKI-Ergänzung, um die Kernel-Befehlszeile zu konfigurieren, ein
       Initrd-System-Erweiterungsabbild, um das MVISUAL-Kernelmodul in die Initrd zu installieren und ein
       normales Systemerweiterungsabbild, um die proprietären OpenGL- und Vulkan-Benutzerraumtreiber
       hinzuzufügen. Alle diese sollten in der Version fest mit dem Kernbetriebssystem verzahnt werden.

       Zuerst wird eine optionale Funktionalität names »mvisual-driver« definiert:

           # /usr/lib/sysupdate.d/mvisual-driver.feature
           [Feature]
           Description=Proprietärer MVISUAL-GPU-Treiber
           Documentation=https://support.example.com/foobarOS/mvisual
           AppStream=https://metadata.example.com/mvisual-driver-%A.xml.gz

       Beachten Sie, dass AppStream-Metadaten für diese Funktionalität definiert werden, da
       Software-Verwaltungsprogramme sie Endanwendern zeigen sollen. Als nächstes werden die entsprechenden
       Übertragungen definiert:

           # /usr/lib/sysupdate.d/50-mvisual-userspace.transfer
           [Transfer]
           Features=mvisual-driver
           ProtectVersion=%A

           [Source]
           Type=url-file
           Path=https://download.example.com/
           MatchPattern=foobarOS_@v_mvisual_userspace.raw.xz

           [Target]
           Type=regular-file
           Path=/var/lib/extensions
           MatchPattern=foobarOS_@v_mvisual.raw
           Mode=0444
           InstancesMax=2

           # /usr/lib/sysupdate.d/70-mvisual-initrd.transfer
           [Transfer]
           Features=mvisual-driver
           ProtectVersion=%A

           [Source]
           Type=url-file
           Path=https://download.example.com/
           MatchPattern=foobarOS_@v_mvisual_initrd.raw.xz

           [Target]
           Type=regular-file
           Path=/EFI/Linux
           PathRelativeTo=boot
           MatchPattern=foobarOS_@v.efi.extra.d/foobarOS_mvisual.raw
           Mode=0444
           InstancesMax=2

           # /usr/lib/sysupdate.d/90-mvisual-addon.transfer
           [Transfer]
           Features=mvisual-driver
           ProtectVersion=%A

           [Source]
           Type=url-file
           Path=https://download.example.com/
           MatchPattern=foobarOS_@v_mvisual_addon.efi.xz

           [Target]
           Type=regular-file
           Path=/EFI/Linux
           PathRelativeTo=boot
           MatchPattern=foobarOS_@v.efi.extra.d/foobarOS_mvisual.addon.efi
           Mode=0444
           InstancesMax=2

       Beispiel 3. Schnittmenge von Funktionalitäten

       Nehmen wir an, dass MVISUAL einen besonderen Werkzeugssatz veröffentlicht, der Distributionsentwicklern
       bei der Fehlersuche in Abstürzen in ihren proprietären Treibern hilft. Dazu wird eine Übertragung
       definiert:

           # /usr/lib/sysupdate.d/50-mvisual-debugger.transfer
           [Transfer]
           RequisiteFeatures=devel mvisual-driver
           ProtectVersion=%A

           [Source]
           Type=url-file
           Path=https://download.example.com/
           MatchPattern=foobarOS_@v_devel.raw.xz

           [Target]
           Type=regular-file
           Path=/var/lib/extensions
           MatchPattern=foobarOS_@v_devel.raw
           Mode=0444
           InstancesMax=2

       Diese Übertragung wird nur verwandt, falls sowohl die Funktionalität »devel« als auch »mvisual-driver«
       aktiviert sind.

SIEHE AUCH

       systemd(1), systemd-sysupdate(8), sysupdate.d(5)

ANMERKUNGEN

        1. AppStream-Katalog
           https://www.freedesktop.org/software/appstream/docs/chap-CatalogData.html

Ü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                                                                              SYSUPDATE.FEATURES(5)