Provided by: manpages-zh_1.6.3.3-2_all bug

NAME

       os-release - 操作系統標識

SYNOPSIS

       /etc/os-release

       /usr/lib/os-release

描述

       /etc/os-release/usr/lib/os-release 文件包含了操作系統識別數據。

       os-release 文件的基本格式是 一系列換行符分隔的 VAR=VALUE 行(每行一個變量), 可以直接嵌入到
       shell 腳本中使用。 注意,此文件並不支持變量替換之類的任何高級 shell 特性,
       以便於應用程序無須支持這些高級 shell 特性, 即可直接使用此文件。 如果 VALUE
       值中包含任何非字母數字字符(也就是 A–Z, a–z, 0–9 之外的字符),
       那麼必須使用引號(單雙皆可)界定, 並且任何在Shell中具有特殊含義的字符, 包括:美元符,
       單雙引號, 反斜線, 反引號 ... 等等,都必須使用shell風格的反斜線進行轉義。
       所有字符串都必須使用UTF-8編碼, 並且禁止使用一切非打印字符。
       以"#"開頭的行將被作爲註釋忽略。

       應用程序應該只讀取 /etc/os-release 文件, 僅在 /etc/os-release 不存在的情況下, 纔可以讀取
       /usr/lib/os-release 文件。 絕對禁止應用程序同時讀取兩個文件。
       操作系統發行商應該將操作系統識別數據存放在 /usr/lib/os-release 文件中, 同時將
       /etc/os-release 作爲一個軟連接, 以相對路徑的方式指向 /usr/lib/os-release 文件,
       以提供應用程序讀取 /etc 的兼容性。 軟連接使用相對路徑是爲了避免在 chroot 或 initrd
       環境中失效。

       os-release 的內容應當僅由發行版的供應商設置, 系統管理員一般不應該修改此文件。

       因爲此文件僅用於操作系統識別,
       所以必須禁止包含任何需要本地化的內容(也就是禁止包含非ASCII字符)。

       /etc/os-release/usr/lib/os-release 可以是軟連接, 但是必須全部位於根文件系統上,
       以確保在系統剛啓動時即可讀取其內容。

       更多有關 os-release 的理解, 請參閱 Announcement of /etc/os-release[1]

選項

       可以在 os-release 中使用下列操作系統識別字段:

       NAME=
           不帶版本號且適合人類閱讀的操作系統名稱。這是必填字段。例如: "NAME=Fedora" 或
           "NAME="Debian GNU/Linux"" 。 默認值是 "NAME=Linux" 。

       VERSION=
           操作系統的版本號。 禁止包含操作系統名稱,但是可以包含適合人類閱讀的發行代號。
           這是可選字段。 例如: "VERSION=17" 或 "VERSION="17 (Beefy Miracle)""

       ID=
           小寫字母表示的操作系統名稱, 禁止包含 0–9, a–z, ".", "_", "-"
           以外的字符,禁止包含任何版本信息。 該字段適合被程序或腳本解析,也可用於生成文件名。
           這是必填字段。例如: "ID=fedora" 或 "ID=debian" 。 默認值是 "ID=linux" 。

       ID_LIKE=
           一系列空格分隔的字符串, 其中的每一項都符合 ID= 字段的規範, 也就是僅包含 0–9, a–z,
           ".", "_", "-" 字符。 此字段用於表明當前的操作系統 是從哪些"父發行版"派生而來,
           切勿列出從此發行版派生的"子發行版", 排列順序由近到遠, 關係最近的發行版名稱排在最前,
           緊密度依次遞減。 應用程序如果不能識別 ID= 字段的內容, 那麼可以參考此字段。
           這是可選字段。 比如對於 "ID=centos"來說, "ID_LIKE="rhel fedora"" 就是一個合理的設置。
           而對於 "ID=ubuntu" 來說, "ID_LIKE=debian" 也很合理。

       VERSION_CODENAME=
           小寫字母表示的操作系統發行代號, 禁止包含 0–9, a–z, ".", "_", "-" 以外的字符,
           禁止包含任何版本信息以及操作系統名稱。 該字段適合被程序或腳本解析,
           也可用於生成文件名。 這是可選字段, 並且某些發行版可能不存在此字段。例如:
           "VERSION_CODENAME=buster", "VERSION_CODENAME=xenial"

       VERSION_ID=
           小寫字母表示的操作系統版本號, 禁止包含 0–9, a–z, ".", "_", "-" 以外的字符,
           禁止包含操作系統名稱與發行代號。 該字段適合被程序或腳本解析, 也可用於生成文件名。
           這是可選字段。例如: "VERSION_ID=17" 或 "VERSION_ID=11.04"

       PRETTY_NAME=
           適合人類閱讀的比較恰當的發行版名稱,
           可選的包含發行代號與系統版本之類的信息,內容比較隨意。 這是必填字段。 例如:
           "PRETTY_NAME="Fedora 17 (Beefy Miracle)"" 。 默認值是 "PRETTY_NAME="Linux"" 。

       ANSI_COLOR=
           在控制檯上顯示操作系統名稱的文字顏色。 必須設爲符合 ESC [ m ANSI/ECMA-48
           轉義代碼規範的字符串。 這是可選字段。 例如: "ANSI_COLOR="0;31""(紅色) 或
           "ANSI_COLOR="1;34""(淡藍)

       CPE_NAME=
           操作系統的"CPE名稱"(URI綁定語法), 詳見 Common Platform Enumeration Specification[2]
           文檔。 這是可選字段。例如: "CPE_NAME="cpe:/o:fedoraproject:fedora:17""

       HOME_URL=, SUPPORT_URL=, BUG_REPORT_URL=, PRIVACY_POLICY_URL=
           與操作系統相關的互聯網地址。 HOME_URL= 操作系統的主頁地址,
           或者特定於此版本操作系統的頁面地址。 SUPPORT_URL= 操作系統的支持頁面(若存在),
           主要用於發行商提供技術支持的頁面。 BUG_REPORT_URL= 故障彙報頁面(若存在),
           主要用於基於社區互動的發行版。 PRIVACY_POLICY_URL= 隱私條款頁面(若存在)。
           上述URL應該分別出現在"About this system"界面下的 "About this Operating System",
           "Obtain Support", "Report a Bug", "Privacy Policy" 子界面中。 這些字段的值必須符合
           RFC3986[3] 規範, 通常以 "http:" 或 "https:" 開頭, 但也可能以 "mailto:" 或 "tel:"
           開頭。 例如: "HOME_URL="https://fedoraproject.org/"" 與
           "BUG_REPORT_URL="https://bugzilla.redhat.com/""

       BUILD_ID=
           用於區分同一版本操作系統的不同編譯次序的唯一標示符(不會被系統更新所修改)。
           該字段在不同的 VERSION_ID 之間有可能是相同的, 因爲 BUILD_ID
           僅在同一版本號內部保持唯一。 每當發佈新版本的操作系統時, 只需要更新 VERSION_ID
           字段即可,並不一定必須更新 BUILD_ID 字段。 這是可選字段。 例如:
           "BUILD_ID="2013-03-20.3"" 或 "BUILD_ID=201303203"

       VARIANT=
           適合人類閱讀的發行版分支標識符。 用於向用戶表明
           此係統的默認配置是專門面向特定應用場景的。 這是可選字段,
           並且某些發行版可能不存在此字段。 例如: "VARIANT="Server Edition"", "VARIANT="Smart
           Refrigerator Edition"" 注意,此字段僅用於顯示目的, 程序應該使用 VARIANT_ID
           字段進行可靠的判斷。

       VARIANT_ID=
           小寫字母表示的發行版分支標識符, 禁止包含 0–9, a–z, ".", "_", "-" 以外的字符。
           該字段適合被程序或腳本解析, 也可用於生成文件名。 這是可選字段,
           並且某些發行版可能不存在此字段。 例如: "VARIANT_ID=server", "VARIANT_ID=embedded"

       如果要在程序中檢測發行版名稱及其變種, 那麼可以使用 IDVERSION_ID 字段, 並將 ID_LIKE
       用作 ID 的替補。 如果想要向用戶顯示發行版的名稱, 那麼可以使用 PRETTY_NAME 字段。

       注意, 滾動發佈的發行版可能不會提供版本信息, 也就程序不能假定 VERSIONVERSION_ID
       字段必然存在。

       操作系統的發行商可能爲此文件引入新的字段,
       強烈建議爲新引入的字段使用特別的前綴以避免衝突。
       讀取此文件的程序應該能夠安全的忽略不理解的字段。 例如:
       "DEBIAN_BTS="debbugs://bugs.debian.org/""

例子

           NAME=Fedora
           VERSION="24 (Workstation Edition)"
           ID=fedora
           VERSION_ID=24
           PRETTY_NAME="Fedora 24 (Workstation Edition)"
           ANSI_COLOR="0;34"
           CPE_NAME="cpe:/o:fedoraproject:fedora:24"
           HOME_URL="https://fedoraproject.org/"
           BUG_REPORT_URL="https://bugzilla.redhat.com/"
           REDHAT_BUGZILLA_PRODUCT="Fedora"
           REDHAT_BUGZILLA_PRODUCT_VERSION=24
           REDHAT_SUPPORT_PRODUCT="Fedora"
           REDHAT_SUPPORT_PRODUCT_VERSION=24
           PRIVACY_POLICY_URL=https://fedoraproject.org/wiki/Legal:PrivacyPolicy
           VARIANT="Workstation Edition"
           VARIANT_ID=workstation

參見

       systemd(1), lsb_release(1), hostname(5), machine-id(5), machine-info(5)

NOTES

        1. Announcement of /etc/os-release
           http://0pointer.de/blog/projects/os-release

        2. Common Platform Enumeration Specification
           http://scap.nist.gov/specifications/cpe/

        3. RFC3986
           https://tools.ietf.org/html/rfc3986

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

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