Provided by: manpages-de_2.16-1_all bug

BEZEICHNUNG

       machine-id - Lokale Konfigurationsdatei zur Maschinenkennung

ÜBERSICHT

       /etc/machine-id

BESCHREIBUNG

       Die Datei /etc/machine-id enthält eine eindeutige Maschinenkennung des lokalen Systems,
       die während der Installation oder des Systemstarts gesetzt wird. Die Maschinenkennung ist
       eine einzelne, hexadezimale 32-Zeichen-Kennung (in Kleinbuchstaben), die mit einem
       Zeilenumbruch abgeschlossen wird. Nach der Dekodierung aus dem hexadezimalen entspricht
       sie einem 16-Byte/128-Bit-Wert. Diese Kennung darf nicht komplett nur aus Nullen bestehen.

       Die Maschinenkennung wird normalerweise während der Systeminstallation oder des ersten
       Systemstarts aus einer Zufallsquelle erstellt und bleibt für alle nachfolgenden
       Systemstarts konstant. Für zustandslose Systeme kann sie optional falls notwendig zur
       Laufzeit während der frühen Systemstartphase erstellt werden.

       Die Maschinenkennung kann beispielsweise beim Systemstart über das Netz mit dem
       Kernelbefehlszeilenparameter systemd.machine_id= oder durch Übergabe der Option
       --machine-id= an Systemd gesetzt werden. Eine in dieser Weise festgelegte Maschinenkennung
       hat eine höhere Priorität und wird statt der in /etc/machine-id gespeicherten Kennung
       verwandt.

       Die Maschinenkennung ändert sich nicht, wenn sich die lokale oder Netzkonfiguration ändert
       oder die Hardware ausgetauscht wird. Daher und aufgrund ihrer größeren Länge ist sie eine
       nützlichere Ersetzung des von POSIX festgelegten Aufrufs gethostid(3).

       Diese Maschinenkennung folgt dem gleichen Format und der gleichen Logik wie die
       Maschinenkennung von D-Bus.

       Diese Kennung identifiziert den Rechner eindeutig. Sie sollte »vertraulich« behandelt und
       nicht in unvertrauenswürdigen Umgebungen, insbesondere im Netz offengelegt werden. Falls
       für einige Anwendungen eine stabile Kennung, die an eine Maschine gebunden ist, benötigt
       wird, darf die Maschinenkennung oder Teile davon nicht direkt verwandt werden. Stattdessen
       sollte die Maschinenkennung mit einer kryptographischen, mit einem Schlüssel versehenen
       Funktion in einen Hash verwandelt werden, wobei ein fester, anwendungsbezogener Schlüssel
       verwandt werden sollte. Damit ist die Kennung ausreichend eindeutig und in einer
       konstanten Art und Weise von der Maschinenkennung abgeleitet, aber es gibt dann keine
       Möglichkeit, die ursprüngliche Maschinenkennung aus der anwendungsspezifischen abzuleiten.
       Das API sd_id128_get_machine_app_specific(3) stellt eine Implementierung eines solchen
       Algorithmus bereit.

INITIALISIERUNG

       Im normalen Betrieb sollte jede Maschine eine nicht leere Kennung haben. Die Kennung von
       jeder Maschine sollte eindeutig sein. Um diese Ziele zu erreichen, kann /etc/machine-id
       auf verschiedene Arten initialisiert werden.

       Für normale Betriebssysteminstallationen, bei denen ein angepasstes Abbild für eine
       bestimmte Maschine erstellt wird, sollte /etc/machine-id während der Installation befüllt
       werden.

       systemd-machine-id-setup(1) kann von Installationswerkzeugen verwandt werden, um die
       Maschinenkennung zum Installationszeitpunkt zu initialisieren, aber /etc/machine-id kann
       auch mit anderen Mitteln geschrieben werden.

       Für Betriebssystemabbilder, die einmal erzeugt und dann auf mehreren Maschinen verwandt
       werden, beispielsweise Container oder in der Cloud, sollte /etc/machine-id in dem
       generischen Dateisystem leer sein. Während des Systemstarts wird eine Kennung erstellt und
       falls möglich in dieser Datei gespeichert. An der Stelle eine leere Datei zu haben ist
       nützlich, da es erlaubt, eine temporäre Datei mittels einer Bind-Einhängung über die echte
       Datei zu legen, falls das Abbild nur lesen verwandt wird.

       systemd-firstboot(1) kann zur Initialisierung von /etc/machine-id auf eingehängten (aber
       nicht gestarteten) Systemabbildern verwandt werden.

       Wenn eine Maschine mit systemd(1) gestartet wird, wird die Kennung der Maschine etabliert.
       Falls die Optionen systemd.machine_id= oder --machine-id= (siehe ersten Abschnitt)
       festgelegt werden, wird dieser Wert verwandt. Falls diese Datei leer ist oder fehlt, wird
       Systemd versuchen, die D-Bus-Maschinenkennung aus /var/lib/dbus/machine-id, den Wert der
       Kernelbefehlszeilenoption container_uuid, die KVM-DMI-product_uuid oder die Devicetree
       vm,uuid (auf KVM-Systemen) und schließlich eine zufällig erstellte UUID zu verwenden.

       Nachdem die Maschinenkennung etabliert ist, wird systemd(1) versuchen, sie in
       /etc/machine-id zu speichern. Falls dies fehlschlägt, wird es versuchen, sie als temporäre
       Datei mittels Bind-Einhängung über /etc/machine-id zu legen. Es ist ein Fehler, falls das
       Dateisystem nur lesbar ist und keine (möglicherweise leere) Datei /etc/machine-id enthält.

       systemd-machine-id-commit.service(8) wird versuchen, die Maschinenkennung in das
       Dateisystem zu schreiben, falls /etc/machine-id oder /etc während der frühen
       Systemstartphase schreibgeschützt sind, aber später schreibbar werden.

BEZUG ZU OSF UUIDS

       Beachten Sie, dass die Maschinenkennung historisch gesehen weder eine OSF-UUID, wie sie
       durch RFC 4122[1] definiert wird, noch eine Microsoft GUID ist; beginnend mit Systemd v30
       werden sich allerdings neu erstellte Maschinenkennungen als v4 UUIDs eignen.

       Zur Wahrung der Kompatibilität mit bestehenden Installationen sollte jede Anwendung, die
       eine UUID benötigt, die Maschinenkennung dekodieren und dann die nachfolgenden Aktionen
       anwenden, um sie in eine gültige OSF-v4-UUID zu wandeln (hierbei ist »id« ein
       vorzeichenfreies Zeichenfeld):

           /* UUID auf Version 4 setzen --- wirklich zufällige Erzeugung */
           id[6] = (id[6] & 0x0F) | 0x40;
           /* Die UUID-Variante auf DCE setzen */
           id[8] = (id[8] & 0x3F) | 0x80;

       (Dieser Code ist von »generate_random_uuid()« von drivers/char/random.c aus den
       Linux-Kernelquellen inspiriert.)

GESCHICHTE

       Das einfache Konfigurationsdateiformat von /etc/machine-id entspringt der durch D-Bus
       eingeführten Datei /var/lib/dbus/machine-id. Tatsächlich kann letztere Datei ein Symlink
       auf /etc/machine-id sein.

SIEHE AUCH

       systemd(1), systemd-machine-id-setup(1), gethostid(3), hostname(5), machine-info(5),
       os-release(5), sd-id128(3), sd_id128_get_machine(3), systemd-firstboot(1)

ANMERKUNGEN

        1. RFC 4122
           https://tools.ietf.org/html/rfc4122

Ü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>.