Man page - journald.conf.d(5)

Packages contains this manual

Available languages:

en zh_TW zh_CN de

Manual

JOURNALD.CONF

NAME
SYNOPSIS
描 述
配 置 目 錄 及 其 優 先 順 序
選 項
日 誌 轉 發
參 見
NOTES


NAME

journald.conf, journald.conf.d - 日 誌 服 務 配 置 檔 案

SYNOPSIS

/etc/systemd/journald.conf

/etc/systemd/journald.conf.d/*.conf

/run/systemd/journald.conf.d/*.conf

/usr/lib/systemd/journald.conf.d/*.conf

描 述

這 些 檔 案 用 於 配 置 系 統 日 誌 服 務 systemd-journald.service (8) 的 行 為 。

配 置 目 錄 及 其 優 先 順 序

預 設 設 定 是 在 編 譯 期 間 確 定 的 , 所 以 僅 在 確 實 需 要 修 改 預 設 設 定 的 情 況 下 , 才 需 要 使 用 配 置 檔 案 。 位 於 /etc/systemd/ 目 錄 中 的 初 始 配 置 檔 案 , 僅 包 含 了 展 示 選 項 預 設 值 的 註 釋 , 目 的 在 於 方 便 系 統 管 理 員 檢 視 和 直 接 修 改 。

如 果 軟 體 包 想 要 自 定 義 某 些 預 設 設 定 , 那 麼 必 須 將 自 定 義 的 配 置 檔 案 安 裝 到 /usr/lib/systemd/*.conf.d/ 目 錄 中 。 /etc/ 目 錄 僅 供 系 統 管 理 員 使 用 。 系 統 管 理 員 可 以 利 用 下 面 的 邏 輯 來 覆 蓋 預 設 設 定 : 主 配 置 檔 案 最 先 被 讀 取 , 優 先 順 序 也 最 低 。 所 有 *.conf.d/ 中 的 配 置 檔 案 都 會 覆 蓋 主 配 置 檔 案 中 的 設 定 。 所 有 *.conf.d/ 中 的 配 置 檔 案 (無 論 位 於 哪 個 目 錄 中 ), 統 一 按 照 檔 名 的 字 典 順 序 處 理 。 如 果 在 多 個 配 置 檔 案 中 設 定 了 同 一 個 選 項 , 那 麼 僅 以 檔 名 最 靠 後 (字 典 順 序 )的 那 一 個 為 準 。 為 了 便 於 排 序 , 建 議 給 所 有 *.conf.d/ 中 的 配 置 檔 案 都 加 上 兩 位 十 進 位 制 數 字 的 檔 名 字 首 。

如 果 系 統 管 理 員 想 要 遮 蔽 /usr/lib/ 目 錄 中 的 某 個 配 置 檔 案 , 那 麼 最 佳 做 法 是 在 /etc/ 目 錄 中 建 立 一 個 指 向 /dev/null 的 同 名 符 號 連 結 , 即 可 徹 底 遮 蔽 /usr/lib/ 目 錄 中 的 同 名 檔 案 。

選 項

所 有 選 項 都 位 於 "[Journal]" 小 節 :

Storage=

在 哪 裡 儲 存 日 誌 檔 案 : "volatile" 表 示 僅 儲 存 在 記 憶 體 中 , 也 就 是 僅 儲 存 在 /run/log/journal 目 錄 中 (將 會 被 自 動 按 需 建 立 )。 "persistent" 表 示 優 先 儲 存 在 磁 碟 上 , 也 就 優 先 儲 存 在 /var/log/journal 目 錄 中 (將 會 被 自 動 按 需 建 立 ), 但 若 失 敗 (例 如 在 系 統 啟 動 早 期 "/var"尚 未 掛 載 ), 則 轉 而 儲 存 在 /run/log/journal 目 錄 中 (將 會 被 自 動 按 需 建 立 )。 "auto"(預 設 值 ) 與 "persistent" 類 似 , 但 不 自 動 建 立 /var/log/journal 目 錄 , 因 此 可 以 根 據 該 目 錄 的 存 在 與 否 決 定 日 誌 的 儲 存 位 置 。 "none" 表 示 不 儲 存 任 何 日 誌 (直 接 丟 棄 所 有 收 集 到 的 日 誌 ), 但 日 誌 轉 發 (見 下 文 )不 受 影 響 。 預 設 值 是 "auto"

Compress=

預 設 值 "yes"表 示 : 壓 縮 儲 存 大 於 特 定 閾 值 的 物 件 。

Seal=

預 設 值 "yes"表 示 : 如 果 存 在 一 個 "sealing key"(由 journalctl (1) 的 --setup-keys 命 令 建 立 ), 那 麼 就 為 所 有 持 久 儲 存 的 日 誌 檔 案 啟 用 FSS( Seekable Sequential Key Generators [1] )保 護 , 以 避 免 日 誌 檔 案 被 惡 意 或 無 意 的 修 改 。

SplitMode=

設 定 如 何 按 使 用 者 分 割 日 誌 檔 案 , 以 實 現 不 同 的 訪 問 控 制 策 略 (日 誌 守 護 程 序 會 確 保 每 個 使 用 者 都 能 讀 取 自 己 的 日 誌 檔 案 )。 注 意 , 僅 分 割 持 久 儲 存 的 日 誌 (/var/log/journal), 永 不 分 割 記 憶 體 中 的 日 誌 (/run/log/journal)。 可 以 使 用 的 分 割 策 略 如 下 : "uid" 表 示 每 個 使 用 者 都 有 自 己 專 屬 的 日 誌 檔 案 (無 論 該 使 用 者 是 否 擁 有 登 入 會 話 ), 但 系 統 使 用 者 的 日 誌 依 然 記 錄 到 系 統 日 誌 中 。 這 是 預 設 值 。

"none" 表 示 不 對 日 誌 檔 案 進 行 分 割 , 而 是 將 所 有 日 誌 都 記 錄 到 系 統 日 誌 中 。 這 意 味 著 非 特 權 使 用 者 根 本 無 法 讀 取 屬 於 自 己 的 日 誌 資 訊 。

RateLimitIntervalSec= , RateLimitBurst=

用 於 限 制 日 誌 的 生 成 速 度 (設 為 零 表 示 不 作 限 制 )。 RateLimitIntervalSec= 用 於 設 定 一 個 時 間 段 長 度 , 預 設 值 是 30秒 。 RateLimitBurst= 用 於 設 定 一 個 正 整 數 , 表 示 訊 息 條 數 , 預 設 值 是 1000條 。 表 示 在 RateLimitIntervalSec= 時 間 段 內 , 每 個 服 務 最 多 允 許 產 生 RateLimitBurst= 數 量 (條 數 )的 日 誌 。 在 同 一 個 時 間 段 內 , 超 出 數 量 限 制 的 日 誌 將 被 丟 棄 , 直 到 下 一 個 時 間 段 才 能 再 次 開 始 記 錄 。 對 於 所 有 被 丟 棄 的 日 誌 訊 息 , 僅 用 一 條 類 似 "xxx條 訊 息 被 丟 棄 "的 訊 息 來 代 替 。 這 個 限 制 是 針 對 每 個 服 務 的 限 制 , 一 個 服 務 超 限 並 不 會 影 響 到 另 一 個 服 務 的 日 誌 記 錄 。 RateLimitIntervalSec= 可 以 使 用 下 面 的 時 間 單 位 : "ms", "s", "min", "h", "d"

SystemMaxUse= , SystemKeepFree= , SystemMaxFileSize= , SystemMaxFiles= , RuntimeMaxUse= , RuntimeKeepFree= , RuntimeMaxFileSize= , RuntimeMaxFiles=

限 制 日 誌 檔 案 的 大 小 上 限 。 以 "System" 開 頭 的 選 項 用 於 限 制 磁 碟 使 用 量 , 也 就 是 /var/log/journal 的 使 用 量 。 以 "Runtime" 開 頭 的 選 項 用 於 限 制 記 憶 體 使 用 量 , 也 就 是 /run/log/journal 的 使 用 量 。 以 "System" 開 頭 的 選 項 僅 在 /var/log/journal 目 錄 確 實 存 在 且 可 寫 時 才 有 意 義 。 但 以 "Runtime" 開 頭 的 選 項 永 遠 有 意 義 。 也 就 是 說 , 在 系 統 啟 動 早 期 /var 尚 未 掛 載 時 、 或 者 系 統 管 理 員 禁 止 在 磁 碟 上 儲 存 日 誌 的 時 候 , 僅 有 "Runtime" 開 頭 的 選 項 有 意 義 。 journalctl systemd-journald 工 具 會 忽 略 日 誌 目 錄 中 所 有 後 綴 名 不 等 於 ".journal" 或 ".journal˜" 的 檔 案 。 換 句 話 說 , 日 誌 目 錄 中 不 應 該 存 在 後 綴 名 不 等 於 ".journal" 或 ".journal˜" 的 檔 案 , 因 為 這 些 檔 案 永 遠 不 會 被 清 理 。

SystemMaxUse= RuntimeMaxUse= 限 制 全 部 日 誌 檔 案 加 在 一 起 最 多 可 以 佔 用 多 少 空 間 。 SystemKeepFree= RuntimeKeepFree= 表 示 除 日 誌 檔 案 之 外 , 至 少 保 留 多 少 空 間 給 其 他 用 途 。 systemd-journald 會 同 時 考 慮 這 兩 個 因 素 , 並 且 儘 量 限 制 日 誌 檔 案 的 總 大 小 , 以 同 時 滿 足 這 兩 個 限 制 。

SystemMaxUse= RuntimeMaxUse= 的 預 設 值 是 10%空 間 與 4G空 間 兩 者 中 的 較 小 者 ; SystemKeepFree= RuntimeKeepFree= 的 預 設 值 是 15%空 間 與 4G空 間 兩 者 中 的 較 大 者 ; 如 果 在 systemd-journald 啟 動 時 , 檔 案 系 統 即 將 被 填 滿 並 且 已 經 超 越 了 SystemKeepFree= RuntimeKeepFree= 的 限 制 , 那 麼 日 誌 記 錄 將 被 暫 停 。 也 就 是 說 , 如 果 在 建 立 日 誌 檔 案 時 , 檔 案 系 統 有 充 足 的 空 閒 空 間 , 但 是 後 來 檔 案 系 統 被 其 他 非 日 誌 檔 案 過 多 佔 用 , 那 麼 systemd-journald 只 會 立 即 暫 停 日 誌 記 錄 , 但 不 會 刪 除 已 經 存 在 的 日 誌 檔 案 。

SystemMaxFileSize= RuntimeMaxFileSize= 限 制 單 個 日 誌 檔 案 的 最 大 體 積 , 到 達 此 限 制 後 日 志 文 件 將 會 自 動 滾 動 。 預 設 值 是 對 應 的 SystemMaxUse= RuntimeMaxUse= 值 的 1/8 , 這 也 意 味 著 日 誌 滾 動 預 設 保 留 7個 歷 史 檔 案 。

日 誌 大 小 的 值 可 以 使 用 以 1024為 基 數 的 K, M, G, T, P, E 字 尾 , 分 別 對 應 於 1024, 1024², ... 位 元 組 。

SystemMaxFiles= RuntimeMaxFiles= 限 制 最 多 允 許 同 時 存 在 多 少 個 日 誌 檔 案 , 超 出 此 限 制 後 , 最 老 的 日 誌 檔 案 將 被 刪 除 , 而 當 前 的 活 動 日 誌 檔 案 則 不 受 影 響 。 預 設 值 為 100個 。

MaxFileSec=

日 誌 滾 動 的 時 間 間 隔 。 通 常 並 不 需 要 使 用 基 於 時 間 的 日 誌 滾 動 策 略 , 因 為 由 SystemMaxFileSize= RuntimeMaxFileSize= 控 制 的 基 於 檔 案 大 小 的 日 誌 滾 動 策 略 已 經 可 以 確 保 日 誌 檔 案 的 大 小 不 會 超 標 。 預 設 值 是 一 個 月 , 設 為 零 表 示 停 用 基 於 時 間 的 日 誌 滾 動 策 略 。 可 以 使 用 "year", "month", "week", "day", "h", "m" 時 間 字 尾 , 若 不 使 用 字 尾 則 表 示 以 秒 為 單 位 。

MaxRetentionSec=

日 誌 檔 案 的 最 大 保 留 期 限 。 當 日 志 文 件 的 最 後 修 改 時 間 超 過 此 期 限 後 將 被 刪 除 。 預 設 值 零 表 示 不 使 用 基 於 時 間 的 日 誌 刪 除 策 略 。 通 常 並 不 需 要 使 用 基 於 時 間 的 日 誌 刪 除 策 略 , 因 為 由 SystemMaxUse= RuntimeMaxUse= 控 制 的 基 於 檔 案 大 小 的 日 誌 滾 動 策 略 已 經 可 以 確 保 日 誌 檔 案 的 大 小 不 會 超 標 。 可 以 使 用 "year", "month", "week", "day", "h", "m" 時 間 字 尾 , 若 不 使 用 字 尾 則 表 示 以 秒 為 單 位 。

SyncIntervalSec=

向 磁 碟 刷 寫 日 誌 檔 案 的 時 間 間 隔 , 預 設 值 是 五 分 鐘 。 刷 寫 之 後 , 日 誌 檔 案 將 會 處 於 離 線 (OFFLINE)狀 態 。 注 意 , 當 接 收 到 CRIT, ALERT, EMERG 級 別 的 日 誌 訊 息 後 , 將 會 無 條 件 的 立 即 刷 寫 日 誌 檔 案 。 因 此 該 設 定 僅 對 ERR, WARNING, NOTICE, INFO, DEBUG 級 別 的 日 誌 訊 息 有 意 義 。

ForwardToSyslog= , ForwardToKMsg= , ForwardToConsole= , ForwardToWall=

ForwardToSyslog= 表 示 是 否 將 接 收 到 的 日 誌 訊 息 轉 發 給 傳 統 的 syslog [2] 守 護 程 序 , 預 設 值 為 "no"。 如 果 設 為 "yes", 但 是 沒 有 任 何 程 序 監 聽 對 應 的 套 接 字 , 那 麼 這 種 轉 發 是 無 意 義 的 。 此 選 項 可 以 被 核 心 引 導 選 項 "systemd.journald.forward_to_syslog=" 覆 蓋 。 ForwardToKMsg= 表 示 是 否 將 接 收 到 的 日 誌 訊 息 轉 發 給 核 心 日 誌 緩 衝 區 (kmsg), 預 設 值 為 "no"。 此 選 項 可 以 被 核 心 引 導 選 項 "systemd.journald.forward_to_kmsg=" 覆 蓋 。 ForwardToConsole= 表 示 是 否 將 接 收 到 的 日 誌 訊 息 轉 發 給 系 統 控 制 檯 , 預 設 值 為 "no"。 如 果 設 為 "yes", 那 麼 可 以 透 過 下 面 的 TTYPath= 指 定 轉 發 目 標 。 此 選 項 可 以 被 核 心 引 導 選 項 "systemd.journald.forward_to_console=" 覆 蓋 。 ForwardToWall= 表 示 是 否 將 接 收 到 的 日 誌 訊 息 作 為 警 告 資 訊 傳 送 給 所 有 已 登 入 使 用 者 , 預 設 值 為 "yes"。 此 選 項 可 以 被 核 心 引 導 選 項 "systemd.journald.forward_to_wall=" 覆 蓋 。

MaxLevelStore= , MaxLevelSyslog= , MaxLevelKMsg= , MaxLevelConsole= , MaxLevelWall=

MaxLevelStore= 設 定 記 錄 到 日 誌 檔 案 中 的 最 高 日 誌 等 級 , 預 設 值 為 "debug"; MaxLevelSyslog= 設 定 轉 發 給 傳 統 的 syslog [2] 守 護 程 序 的 最 高 日 誌 等 級 , 預 設 值 為 "debug"; MaxLevelKMsg= 設 定 轉 發 給 核 心 日 誌 緩 衝 區 (kmsg)的 最 高 日 誌 等 級 , 預 設 值 為 "notice"; MaxLevelConsole= 設 定 轉 發 給 系 統 控 制 檯 的 最 高 日 誌 等 級 , 預 設 值 為 "info"; MaxLevelWall= 設 定 作 為 警 告 資 訊 傳 送 給 所 有 已 登 入 使 用 者 的 最 高 日 誌 等 級 , 預 設 值 為 "emerg"; 這 些 選 項 既 可 以 設 為 日 誌 等 級 的 名 稱 , 也 可 以 設 為 日 誌 等 級 對 應 的 數 字 : "emerg"(0), "alert"(1), "crit"(2), "err"(3), "warning"(4), "notice"(5), "info"(6), "debug"(7) 。 所 有 高 於 設 定 等 級 的 日 誌 訊 息 都 將 被 直 接 丟 棄 , 僅 儲 存 /轉 發 小 於 等 於 設 定 等 級 的 日 誌 訊 息 。

TTYPath=

指 定 ForwardToConsole=yes 時 所 使 用 的 控 制 檯 TTY, 預 設 值 是 /dev/console

日 誌 轉 發

有 兩 種 不 同 的 日 誌 轉 發 方 法 : (1)透 過 套 接 字 檔 案 (/run/systemd/journal/syslog) 可 以 將 收 集 到 的 日 誌 訊 息 立 即 轉 發 給 套 接 字 的 監 聽 程 序 (傳 統 的 syslog [2] 守 護 程 序 )。 此 方 法 受 ForwardToSyslog= 指 令 的 控 制 。 (2)日 誌 接 收 程 序 作 為 客 戶 端 執 行 , 就 像 journalctl (1) 一 樣 讀 取 日 誌 檔 案 。 因 此 , 此 方 法 在 Storage=none 時 無 效 。 此 方 法 不 能 即 時 讀 取 日 誌 訊 息 , 但 是 可 以 讀 取 先 前 儲 存 的 日 誌 訊 息 (例 如 在 系 統 啟 動 完 成 之 後 讀 取 系 統 啟 動 早 期 的 日 誌 訊 息 )。 此 方 法 還 可 以 讀 取 到 完 整 的 日 誌 元 資 料 。 此 方 法 一 般 無 法 讀 取 當 前 最 新 的 日 誌 訊 息 , 只 能 讀 取 已 經 被 記 錄 到 檔 案 系 統 上 的 日 誌 訊 息 。 注 意 , syslog [2] 守 護 程 序 通 常 使 用 此 方 法 (而 不 是 前 一 種 方 法 ), 因 此 Storage= 選 項 (而 不 是 ForwardToSyslog= 選 項 ) 不 應 該 設 為 "none"。

參 見

systemd (1), systemd-journald.service (8), journalctl (1), systemd.journal-fields (7), systemd-system.conf (5)

NOTES

1.

Seekable Sequential Key Generators

https://eprint.iacr.org/2013/397

2.

syslog

//linux/sysklogd.html

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

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