為什麼主管理員 UID 是 501?
我了解* 主要管理員使用者被賦予一個使用者 ID,
501
而後續使用者獲得遞增數字 (502
,503
, …)。但是為什麼501
?有什麼特別之處50x
,這種選擇的歷史/技術原因是什麼?
- 當我好奇為什麼我的外部硬碟驅動器裡面有所有被丟棄的文件時,我開始研究這個
.Trashes/501
。我的搜尋使我得出的結論501
是 nix 系統中主要管理員的使用者 ID(我在 macOS 上),但不是為什麼*。
許多 Unix 系統開始以特定數量向使用者分發 UID。Solaris 將給第一個通用使用者 UID 100,在 OpenBSD 上是 1000,在 macOS 上,它似乎是 UID 501,它將是第一個創建的互動式使用者的 UID,這也可能是 macOS 管理員使用者(這不一樣作為根使用者)。
數字較低的帳戶是守護程序等的系統使用者帳戶。這使得區分互動式“人工”帳戶和系統服務帳戶變得更加容易。這也可以使各種軟體中的使用者管理、身份驗證等更加容易。YP/NIS是一個稍微過時的系統,用於將使用者帳戶(和其他資訊)保存在中央伺服器上,而不必在多個客戶端電腦上創建本地使用者,例如,它有一個
MINUID
和MAXUID
設置它應該處理的使用者帳戶範圍。在某些 Unices 上,一系列系統服務帳戶可能會分配給第三方軟體,例如 FreeBSD 上的 UID 50 到 999 或 OpenBSD 上的 500 到 999。
所有這些範圍都是由各個 Unices 的製造商和維護者根據其作業系統的預期需求選擇的。POSIX 標準沒有說明這些事情。最低和最高可分配的 UID(和 GID)通常由本地管理員配置(請參閱您的
adduser
手冊)。大多數 Unices 為
root
超級使用者保留 UID 0,並為使用者分配盡可能高的 UID(或至少一些高值)nobody
(Solaris 使用 UID 60001,OpenBSD 使用 32768,但 UID 可能比這大得多)。(請參閱關於 UID 0 始終存在
root
(或不存在)的評論,這與本主題略有偏離)更新:OpenBSD 項目最近拒絕了隨機化 UID/GID 分配的想法。