Manpages

NAME

machine-id - 本 機 "machine ID"配 置 文 件

SYNOPSIS

/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)

NOTES

1.

RFC 4122

https://tools.ietf.org/html/rfc4122

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