MACHINE-ID(5) machine-id MACHINE-ID(5)

machine-id - 本機"machine ID"配置檔案

/etc/machine-id

描述

/etc/machine-id 檔案包含一個 在安裝作業系統時生成的、專屬於本系統的、獨一無二的"machine ID"。 "machine ID"是一個32字元長度的十六進位制小寫字母字串, 並以換行符結尾, 其本質是一個128位二進位制整數的16進製表示。

"machine ID"通常在系統安裝時從一個隨機數源生成, 並且之後無論經過多少次開關機,也一直保持不變。 另一方面,對於無狀態系統,如果此檔案為空, 將在系統啟動的早期自動隨機生成一個。

"machine ID"一旦生成應該永遠保持不變, 即使系統的硬體發生了變化也不應該修改它。

這裡的"machine ID"與"D-Bus machine ID" 遵守相同的格式與邏輯。

無論主機的網路配置如何變化, 應用程式始終可以使用"machine ID" 在全球範圍內精確的識別一臺主機。基於上述特性, "machine ID" 機制可用於取代 POSIX 的 gethostid(3) 系統呼叫功能。

作業系統的安裝程式可以在安裝時使用 systemd-machine-id-setup(1) 工具來初始化"machine ID"。 可以使用 systemd-firstboot(1) 初始化已掛載(但未啟動)的系統映象的"machine ID"。

還可以透過 systemd.machine_id= 核心引導選項 或者 systemd 的 --machine-id= 命令列選項 來設定"machine ID"。這種方式經常用於網路啟動的場景中。 注意,不可將"machine ID"設為全零值。

與 OSF UUID 的關係

"machine ID"符合 RFC 4122[1] 規範(OSF v4 UUID), 同時也符合 Microsoft GUID 規範。

歷史

/etc/machine-id 檔案的格式源自D-Bus的 /var/lib/dbus/machine-id 檔案。 實際上,/var/lib/dbus/machine-id 很可能就是指向 /etc/machine-id 的一個軟連線。

參見

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)

1.
RFC 4122

本頁面中文版由中文 man 手冊頁計劃提供。

翻譯人員:金步國
金步國作品集:http://www.jinbuguo.com
中文 man 手冊頁計劃:https://github.com/man-pages-zh/manpages-zh

systemd 231