OS-RELEASE(5)

BEZEICHNUNG
os-release - Betriebssystemidentifikation

ÜBERSICHT

/etc/os-release

/usr/lib/os-release

BESCHREIBUNG

Die Dateien /etc/os-release und /usr/lib/os-release enthalten Betriebssystemidentifizierungsdaten.

Das grundlegende Dateiformat von os-release ist eine durch Zeilenumbrüche getrennte Liste von umgebungsartigen, Shell-kompatiblen Variablenzuweisungen. Es ist möglich, die Konfiguration aus Shell-Skripten einzulesen, allerdings werden außer einfachen Variablenzuweisungen keine Shell-Funktionalitäten unterstützt. (Das bedeutet, Variablenexpansion wird explizit nicht unterstützt). Damit wird Anwendungen erlaubt, die Datei einzulesen, ohne eine Shell-kompatible Ausführungseinheit zu implementieren. Variablenzuweisungen müssen in doppelte oder einzelne englische Anführungszeichen eingeschlossen werden, falls sie Leerzeichen, Semikola oder andere besondere Zeichen außerhalb von A–Z, a–z, 0–9 enthalten. Besondere Zeichen der Shell (»$«, Anführungszeichen, Rückwärtsschrägstrich, Gravis) müssen im Shell-Stil mit Rückwärtsschrägstrichen geschützt werden. Alle Zeichenketten sollten im UTF-8-Format sein und nicht druckbare Zeichen sollten nicht verwandt werden. Die Aneinanderreihung individueller Zeichenketten in Anführungszeichen wird nicht unterstützt. Zeilen, die mit »#« beginnen, müssen als Kommentar ignoriert werden. Leere Zeilen sind erlaubt und werden ignoriert.

Die Datei /etc/os-release hat vor /usr/lib/os-release Vorrang. Anwendungen sollten auf erstere prüfen und deren Daten exklusiv nutzen, falls sie exsitiert, und nur auf /usr/lib/os-release zurückfallen, falls sie fehlt. Anwendungen sollten nicht aus beiden Dateien gleichzeitig Daten auslesen. /usr/lib/os-release ist der bevorzugte Ort, um Betriebssystemveröffentlichungsinformationen wie Teile des Lieferantenbaums abzulegen. /etc/os-release sollte ein relativer Symlink auf /usr/lib/os-release sein, um Kompatibilität für Anwendungen bereitzustellen, die nur nach /etc schauen. Ein relativer Symlink anstatt eines absoluten ist notwendig, damit der Link auch in einer Chroot oder Initrd-Umgebung wie Dracut funktioniert.

os-release enthält Daten, die durch den Betriebssystemlieferanten definiert werden und sollte im Allgemeinen durch den Administrator nicht geändert werden.

Da diese Datei nur Namen und Kennungen kodiert, sollte sie nicht lokalisiert werden.

Die Dateien /etc/os-release und /usr/lib/os-release können Symlinks auf andere Dateien sein, aber es ist wichtig, dass diese Datei vom frühsten Zeitpunkt des Systemstarts an verfügbar ist, und sie muss sich daher auf dem Wurzeldateisystem befinden.

Für eine längere Begründung für os-release lesen Sie bitte die Ankündigung von /etc/os-release[1].

OPTIONEN

Die folgenden Betriebssystemidentifikationsparameter können mittels os-release gesetzt werden:

NAME=
    Eine Zeichenkette, die das Betriebssystem identifiziert, ohne Versionskomponente und für die Anzeige beim Benutzer geeignet. Falls nicht gesetzt, standardmäßig »NAME=Linux«. Beispiele: »NAME=Fedora« oder »NAME="Debian GNU/Linux"«.

VERSION=
    Eine Zeichenkette, die die Betriebssystemversion identifiziert, ohne irgendeinen Betriebssystemnamen, möglicherweise einschließlich eines Code-Namens für das Release, und für die Anzeige beim Benutzer geeignet. Dieses Feld ist optional. Beispiele: »VERSION=17« oder »VERSION="17 (Beefy Miracle)"«.

ID=
    Eine Zeichenkette in Kleinbuchstaben (keine Leerzeichen oder andere Zeichen außerhalb von 0–9, a–z, ».«, »_« und »-«), die das Betriebssystem identifiziert, ohne irgendwelche Versionsinformationen und geeignet für die Verarbeitung durch Skripte oder zur Verwendung in erstellten Dateinamen. Falls nicht gesetzt, standardmäßig »ID=linux«. Beispiele: »ID=fedora« oder »ID=debian«.

ID_LIKE=
    Eine durch Leerzeichen getrennte Liste von Betriebssystemkennungen in der gleichen Syntax wie die Einstellung ID=. Sie sollte Kennungen von Betriebssystemen auflisten, die eng in Zusammenhang zu dem lokalen Betriebssystem im Hinblick auf Paketierung und Programmierschnittstellen sind, beispielsweise eine oder mehrere Betriebssystemkennungen auflisten, von denen das lokale Betriebssystem abgeleitet ist. Ein Betriebssystem sollte im Allgemeinen nur andere Betriebssystemkennungen auflisten, von denen es selbst abgeleitet ist, und nicht andere Betriebssysteme, die von ihm abgeleitet sind, obwohl symmetrische Beziehungen möglich sind. Bauskripte und ähnliches könnten diese Variable überprüfen, falls sie das lokale Betriebssystem identifizieren müssen und der Wert von ID= nicht erkannt wird. Betriebssysteme sollten in der Reihenfolge aufgelistet werden, wie eng das lokale Betriebssystem in Bezug zu den aufgeführten steht, beginnend mit dem engsten. Dieses Feld ist optional. Beispiele: Für ein Betriebssystem mit »ID=centos« wäre eine Zuweisung von »ID_LIKE="rhel fedora"« geeeignet. Für ein Betriebssystem mit »ID=ubuntu« ist eine Zuweisung »ID_LIKE=debian« geeignet.

VERSION_CODENAME=
    Eine Zeichenkette in Kleinbuchstaben (keine Leerzeichen oder andere Zeichen außerhalb von 0–9, a–z, ».«, »_« und »-«), die den Release-Namen des Betriebssystems identifiziert, ohne irgendwelche Betriebssystemnamensinformationen oder Release-Versionen und geeignet für die Verarbeitung durch Skripte oder zur Verwendung in erstellten Dateinamen. Dieses Feld ist optional und könnte nicht auf allen Systemen implementiert sein. Beispiele: »VERSION_CODENAME=buster«, »VERSION_CODENAME=xenial«

VERSION_ID=
    Eine Zeichenkette in Kleinbuchstaben (keine Leerzeichen oder andere Zeichen außerhalb von 0–9, a–z, ».«, »_« und »-«), die die Betriebssystemversion identifiziert, ohne irgendwelche Betriebssystemnamensinformationen oder Release-Code-Namen und geeignet für die Verarbeitung durch Skripte oder zur Verwendung in erstellten Dateinamen. Dieses Feld ist optional. Beispiele: »VERSION_ID=17« oder »VERSION_ID=11.04«.

PRETTY_NAME=
    Ein schöner Betriebssystemname in einem Format, das zur Darstellung bei Benutzern geeignet ist. Wie passend kann dies auf irgendeine Art den Release-Code-Namen oder die Betriebssystemversion enthalten oder auch nicht. Falls nicht gesetzt, ist die Vorgabe »PRETTY_NAME="Linux"«. Beispiele: »PRETTY_NAME="Fedora 17 (Beefy Miracle)"«.

ANSI_COLOR=
    Eine vorgeschlagene Farbe zur Darstellung des Betriebssystemnamens auf der Konsole. Dies sollte als Zeichenkette festgelegt werden, die zur Einbindung in den »ESC [ m ANSI/ECMA-48«-Maskierungscode zum Setzen der graphischen Bildwiedergabe geeignet ist. Dieses Feld ist optional. Beispiele: »ANSI_COLOR="0;31" für rot, »ANSI_COLOR="1;34"« für helles blau oder »ANSI_COLOR="0;38;2;60;110;180"« für Fedora-blau.

CPE_NAME=
    Ein CPE-Name für das Betriebssystem, in URI-Anbindungssyntax, gemäß der Gemeinsamen Plattform-Aufzählungs-Spezifikation[2], wie von NIST vorgeschlagen. Dieses Feld ist optional. Beispiel: »CPE_NAME="cpe:/o:fedoraproject:fedora:17"«

HOME_URL=, DOCUMENTATION_URL=, SUPPORT_URL=, BUG_REPORT_URL=, PRIVACY_POLICY_URL=
    Links auf Ressourcen im Internet mit Bezug zu dem Betriebssystem. HOME_URL= sollte sich auf die Homepage des Betriebssystems oder alternativ auf die Homepage der bestimmten Version des Betriebssystems beziehen. DOCUMENTATION_URL= sollte sich auf die Hauptdokumentationsseite für dieses Betriebssystem beziehen. SUPPORT_URL= sollte sich auf die Hauptseite für Unterstützung für das Betriebssystem beziehen, falls es eine solche gibt. Dies ist hauptsächlich für Anbieter, die Unterstützung dafür bereitstellen. BUG_REPORT_URL= sollte sich auf die Hauptseite für die Fehlerdatenbank für das Betriebssystem beziehen, falls es eine solche gibt. Dies ist hauptsächlich für Betriebssysteme gedacht, die sich auf Qualitätssicherung der Gemeinschaft verlassen. PRIVACY_POLICY_URL= sollte sich auf die Hauptseite der Datenschutzrichtlinie für das Betriebssystem beziehen, falls es eine solche gibt. Diese Einstellungen sind optional und es ist typisch, das nur ein Teil dieser Einstellungen bereitgestellt werden. Diese URLs sind für die Angabe in Oberflächen »Über dieses System« gedacht, unter Links mit den Überschriften »Über dieses Betriebssystem«, »Hilfe erhalten«, »Einen Fehler berichten« oder »Datenschutzrichtlinie«. Diese Werte sollten im RFC3986-Format[3] sein und sollten »http:«- oder »https:«-URLs und möglicherweise »mailto:« oder »tel:« sein. Für jede Einstellung darf nur eine URL aufgelistet werden. Falls mehrere Ressourcen referenziert werden müssen, wird empfohlen, eine Online-Anlaufstelle bereitzustellen, auf der alle verfügbaren Ressourcen verlinkt sind. Beispiele: »HOME_URL="https://fedoraproject.org/« und »BUG_REPORT_URL="https://bugzilla.redhat.com/"«

BUILD_ID=
    Eine Zeichenkette, die das Systemabbild identifiziert, das als Ursprung für eine Distribution verwandt wurde (und nicht mit Systemaktualisierungen aktualisiert wird). Das Feld kann bei verschiedenen VERSION_IDs identisch sein, da BUILD_ID nur eine eindeutige Kennung für eine bestimmte Version ist. Distributionen, die jede Aktualisierung als eine neue Version veröffentlichen, müssten nur VERSION_ID verwenden, da jeder Bau bereits aufgrund der VERSION_ID unterscheidbar ist. Dieses Feld ist optional. Beispiele: »BUILD_ID="2013-03-20.3"« oder »BUILD_ID=201303203«.

VARIANT=
    Eine Zeichenkette, die eine spezielle Variante oder Edition des Betriebssystems identifiziert, die zur Darstellung bei Benutzern geeignet ist. Dieses Feld kann den Benutzer darüber informieren, dass die Konfiguration dieses Systems einer speziellen abweichenden Gruppe von Regeln oder einer Standardkonfigurationseinstellung unterliegt. Dieses Feld ist optional und könnte nicht auf allen Systemen implementiert sein. Beispiele: »VARIANT="Server Edition"«, »VARIANT="Intelliegenter-Kühlschrank-Edition"«. Beachten Sie: Dieses Feld dient nur Anzeigezwecken. Für programmgesteuerte Entscheidungen sollte das Feld VARIANT_ID benutzt werden.

VARIANT_ID=
    Eine Zeichenkette in Kleinbuchstaben (keine Leerzeichen oder andere Zeichen außerhalb von 0–9, a–z, ».«, »_« und »-«), die eine spezielle Variante oder eine spezielle Edition des Betriebssystems identifiziert. Dies kann von anderen Paketen interpretiert werden, um eine abweichende Standardkonfiguration zu ermitteln. Dieses Feld ist optional und könnte nicht auf allen Systemen implementiert sein. Beispiele: »VARIANT_ID=server«, »VARIANT_ID=embedded«

LOGO=
    Eine Zeichenkette, die den Namen eines Icons wie er in der Freedesktop.org-Icon-Thema-Spezifikation[4] definiert ist, festlegt. Dies kann von graphischen Anwendungen zur Darstellung eines Logos des Betriebssystems oder des Distributors verwandt werden. Dieses Feld ist optional und muss nicht notwendigerweise auf allen Systemen implementiert sein. Beispiele: »LOGO=fedora-logo«, »LOGO=distributor-logo-opensuse«

Falls Sie diese Datei aus C-Code oder einem Shell-Skript einlesen, um das Betriebssystem oder eine bestimmte Version davon zu ermitteln, benutzen Sie die Felder ID und VERSION_ID, möglicherweise mit ID_LIKE als Rückfallwert. Wenn Sie nach einer Betriebssystemkennungszeichenkette für die Darstellung beim Benutzer suchen, verwenden Sie das Feld PRETTY_NAME.

Beachten Sie, dass Betriebssystemanbieter sich entscheiden könnten, keine Versionsinformationen zu liefern, beispielsweise um rollende Veröffentlichungen (»rolling releases«) zu berücksichtigen. In diesen Fällen können VERSION und VERSION_ID ungesetzt sein. Anwendungen sollte sich nicht darauf verlassen, dass diese Felder gesetzt sind.

Betriebssystemanbieter können das Dateiformat erweitern und neue Felder einführen. Es wird nachdrücklich empfohlen, neuen Feldern einen betriebssystemspezifischen Namen voranzustellen, um Namenskollisionen zu vermeiden. Anwendungen, die diese Datei lesen, müssen unbekannte Felder ignorieren. Beispiel: »DEBIAN_BTS="debbugs://bugs.debian.org/"«

Verwalter von Containern und Sandbox-Laufzeitumgebungen können die Identifizierungsdaten des Rechners Anwendungen zur Verfügung stellen, indem sie die Datei /etc/os-release (falls verfügbar, andernfalls /usr/lib/os-release als Rückfalloptione) als /run/host/os-release bereitstellen.

BEISPIEL

    NAME=Fedora
    VERSION="32 (Workstation Edition)"
    ID=fedora
    VERSION_ID=32
    PRETTY_NAME="Fedora 32 (Workstation Edition)"
    ANSI_COLOR="0;38;2;60;110;180"
    LOGO=fedora-logo-icon
    CPE_NAME="cpe:/o:fedoraproject:fedora:32"
    HOME_URL="https://fedoraproject.org/"
    DOCUMENTATION_URL="https://docs.fedoraproject.org/en-US/fedora/f32/system-administrators-guide/"
    SUPPORT_URL="https://fedoraproject.org/wiki/Communicating_and_getting_help"
    BUG_REPORT_URL="https://bugzilla.redhat.com/"
    REDHAT_BUGZILLA_PRODUCT="Fedora"
    REDHAT_BUGZILLA_PRODUCT_VERSION=32
    REDHAT_SUPPORT_PRODUCT="Fedora"
    REDHAT_SUPPORT_PRODUCT_VERSION=32
    PRIVACY_POLICY_URL="https://fedoraproject.org/wiki/Legal:PrivacyPolicy"
    VARIANT="Workstation Edition"
    VARIANT_ID=workstation

SIEHE AUCH

systemd(1), lsb_release(1), hostname(5), machine-id(5), machine-info(5)

ANMERKUNGEN

1.  Ankündigung von /etc/os-release
    http://0pointer.de/blog/projects/os-release

2.  Gemeinsame Plattform-Aufzählungs-Spezifikation
    http://scap.nist.gov/specifications/cpe/

3.  RFC-3986-Format
    https://tools.ietf.org/html/rfc3986

4.  freedesktop.org-Icon-Thema-Spezifikation
    http://standards.freedesktop.org/icon-theme-spec/latest

Ü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 <debian-l10n-german@lists.debian.org>.