NAME
machine-id - Local machine ID configuration file
SYNOPSIS
/etc/machine-id
DESCRIPTION
The /etc/machine-id file contains the unique machine ID of the local system that is set during installation. The machine ID is a single newline-terminated, hexadecimal, 32-character, lowercase machine ID string. When decoded from hexadecimal, this corresponds with a 16-byte/128-bit string. The machine ID is usually generated from a random source during system installation and stays constant for all subsequent boots. Optionally, for stateless systems, it is generated during runtime at early boot if it is found to be empty. The machine ID does not change based on user configuration or when hardware is replaced. This machine ID adheres to the same format and logic as the D-Bus machine ID. Programs may use this ID to identify the host with a globally unique ID in the network, which does not change even if the local network configuration changes. Due to this and its greater length, it is a more useful replacement for the gethostid(3) call that POSIX specifies. The systemd-machine-id-setup(1) tool may be used by installer tools to initialize the machine ID at install time. Use systemd-firstboot(1) to initialize it on mounted (but not booted) system images. The machine-id may also be set, for example when network booting, by setting the systemd.machine_id= kernel command line parameter or passing the option --machine-id= to systemd. A machine-id may not be set to all zeros.
RELATION TO OSF UUIDS
Note that the machine ID historically is not an OSF UUID as defined by RFC 4122[1], nor a Microsoft GUID; however, starting with systemd v30, newly generated machine IDs do qualify as v4 UUIDs. In order to maintain compatibility with existing installations, an application requiring a UUID should decode the machine ID, and then apply the following operations to turn it into a valid OSF v4 UUID. With "id" being an unsigned character array: /* Set UUID version to 4 --- truly random generation */ id[6] = (id[6] & 0x0F) | 0x40; /* Set the UUID variant to DCE */ id[8] = (id[8] & 0x3F) | 0x80; (This code is inspired by "generate_random_uuid()" of drivers/char/random.c from the Linux kernel sources.)
HISTORY
The simple configuration file format of /etc/machine-id originates in the /var/lib/dbus/machine-id file introduced by D-Bus. In fact, this latter file might be a symlink to /etc/machine-id.
SEE ALSO
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)
NOTES
1. RFC 4122 https://tools.ietf.org/html/rfc4122
More Linux Commands
manpages/lvmconf.8.html
lvmconf(8) - LVM configuration modifier - Linux manual page
lvmconf is a script that modifies the locking configuration in an lvm configuration file. See lvm.conf(5). OPTIONS --disable-cluster Set locking_type to the def
manpages/session-keyring.7.html
session-keyring(7) Session shared process keyring (ManPage)
The session keyring is a keyring used to anchor keys on behalf of a process. It is typically created by the pam_keyinit module when a user logs in and a link wi
manpages/penmount.4.html
penmount(4) - PenMount input driver - Linux manual page.....
penmount is an Xorg input driver for PenMount devices... The penmount driver functions as a pointer input device, and may be used as the X servers core pointer.
manpages/racoon.8.html
racoon(8) - IKE (ISAKMP/Oakley) key management daemon.......
racoon speaks the IKE (ISAKMP/Oakley) key management protocol, to establish security associations with other hosts. The SPD (Security Policy Database) in the ke
manpages/sigtrap.3pm.html
sigtrap(3pm) - Perl pragma to enable simple signal handling
The sigtrap pragma is a simple interface to installing signal handlers. You can have it install one of two handlers supplied by sigtrap itself (one which provid
manpages/XUnmapEvent.3.html
XUnmapEvent(3) - UnmapNotify event structure (Man Page).....
The structure for UnmapNotify events contains: typedef struct { int type; /* UnmapNotify */ unsigned long serial; /* # of last request processed by server */ Bo
manpages/gluSphere.3gl.html
gluSphere(3gl) - draw a sphere (Library - Linux man page)...
gluSphere draws a sphere of the given radius centered around the origin. The sphere is subdivided around the z axis into slices and along the z axis into stacks
manpages/lzmore.1.html
lzmore(1) - view xz or lzma compressed (text) files.........
xzmore is a filter which allows examination of xz(1) or lzma(1) compressed text files one screenful at a time on a soft-copy terminal. To use a pager other than
manpages/slk_color_sp.3ncurses.html
slk_color_sp(3ncurses) - curses screen-pointer extension....
This implementation can be configured to provide a set of functions which improve the ability to manage multiple screens. This feature can be added to any of th
manpages/gnutls_session_get_id.3.html
gnutls_session_get_id(3) - API function - Linux manual page
Returns the current session id. This can be used if you want to check if the next session you tried to resume was actually resumed. This is because resumed sess
manpages/newscr.3ncurses.html
newscr(3ncurses) - curses global variables - Linux man page
This page summarizes variables provided by the curses library. A more complete description is given in the curses(3X) manual page. Depending on the configuratio
manpages/sccmap.1.html
sccmap(1) - extract strongly connected components of directe
sccmap decomposes digraphs into strongly connected components and an auxiliary map of the relationship between components. In this map, each component is collap
