'\" t .TH "LOGIND\&.CONF" "5" "" "systemd 231" "logind.conf" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" logind.conf, logind.conf.d \- 登陸管理器配置文件 .SH "SYNOPSIS" .PP /etc/systemd/logind\&.conf .PP /etc/systemd/logind\&.conf\&.d/*\&.conf .PP /run/systemd/logind\&.conf\&.d/*\&.conf .PP /usr/lib/systemd/logind\&.conf\&.d/*\&.conf .SH "描述" .PP 上述配置文件用於控制 \fBsystemd-logind.service\fR(8) 登陸管理器的行爲。 .SH "配置目錄及其優先級" .PP 默認設置是在編譯期間確定的, 所以僅在確實需要修改默認設置的情況下, 才需要使用配置文件。位於 /etc/systemd/ 目錄中的初始配置文件, 僅包含了展示選項默認值的註釋, 目的在於方便系統管理員查看和直接修改。 .PP 如果軟件包想要自定義某些默認設置, 那麼必須將自定義的配置文件安裝到 /usr/lib/systemd/*\&.conf\&.d/ 目錄中。 /etc/ 目錄僅供系統管理員使用。 系統管理員可以利用下面的邏輯來覆蓋默認設置: 主配置文件最先被讀取, 優先級也最低。 所有 *\&.conf\&.d/ 中的配置文件 都會覆蓋主配置文件中的設置。 所有 *\&.conf\&.d/ 中的配置文件(無論位於哪個目錄中), 統一按照文件名的字典順序處理。 如果在多個配置文件中設置了同一個選項, 那麼僅以文件名最靠後(字典順序)的那一個爲準。 爲了便於排序, 建議給所有 *\&.conf\&.d/ 中的配置文件 都加上兩位十進制數字的文件名前綴。 .PP 如果系統管理員想要屏蔽 /usr/lib/ 目錄中的某個配置文件, 那麼最佳做法是在 /etc/ 目錄中 創建一個指向 /dev/null 的同名符號鏈接, 即可徹底屏蔽 /usr/lib/ 目錄中的同名文件。 .SH "選項" .PP 下面的所有選項都位於 "[Login]" 小節: .PP \fINAutoVTs=\fR .RS 4 必須設爲一個正整數, 表示默認最多可以自動啓動多少個虛擬終端。 當用戶切換到一個先前未曾使用的虛擬終端時, 將根據該虛擬終端的名稱自動從 autovt@\&.service 模版實例化一個 例如 autovt@tty4\&.service 這樣的服務單元。 默認情況下,autovt@\&.service 是一個指向 getty@\&.service 的軟連接。 換句話說,當用戶切換到一個先前未曾使用的虛擬終端時,"login:"登錄提示符是動態啓動的。 因此,此選項實際上相當於設置了允許啓動多少個 \m[blue]\fBagetty\fR\m[]\&\s-2\u[1]\d\s+2 文本登錄界面(與虛擬終端一一對應)。 如果某個虛擬終端已經被其他子系統(例如圖形登錄界面)佔用, 那麼將不會自動啓動此虛擬終端。 注意,\fIReserveVT=\fR 中的虛擬終端 總會被自動啓動, 即使這些終端並不在 \fINAutoVTs=\fR 的範圍內。 默認值是"6"。若設爲"0"則表示禁止自動啓動任何虛擬終端, 也就是禁止自動從 autovt@\&.service 模版實例化。 .RE .PP \fIReserveVT=\fR .RS 4 必須設爲一個表示終端編號的正整數, 表示無條件的爲該終端從 autovt@\&.service 模版實例化一個服務單元(見上文)。 被此選項選中的虛擬終端將被無條件的標記爲"忙碌"狀態, 以確保不被任何其他子系統佔用。 此選項可用於確保無論其他子系統佔用了多少虛擬終端, 在特定編號的終端上總有一個文本界面的登錄 \m[blue]\fBagetty\fR\m[]\&\s-2\u[1]\d\s+2 可用。 默認值是"6", 也就是在 Alt\-F6 上總有一個文本界面的"login:"登錄提示符。 若設爲"0"則表示禁止此特性。 .RE .PP \fIKillUserProcesses=\fR .RS 4 接受一個布爾值。控制在用戶退出登錄會話時, 是否殺死該用戶的進程。如果設爲"yes", 那麼與此會話對應的 scope 單元中所包含的所有進程都將被殺死。 如果設爲"no",那麼與此會話對應的 scope 單元將會被"遺棄", 並且其中包含的所有進程都將被保留(任由其自生自滅)。 默認值是 "yes" 。 參見下面的 \fIKillOnlyUsers=\fR 與 \fIKillExcludeUsers=\fR 選項。 .sp 根據 linger(逗留) 設置的不同,用戶進程除了可以運行在會話中, 還可以運行在 user@\&.service 用戶管理單元中。 這樣就允許用戶運行獨立於登錄會話的進程。參見 \fBloginctl\fR(1) 的 \fBenable\-linger\fR 命令。 .sp 注意,設置 \fIKillUserProcesses=yes\fR 將破壞 \fBscreen\fR(1) 與 \fBtmux\fR(1) 之類的工具(除非它們被移出了會話 scope 單元之外)。參見 \fBsystemd-run\fR(1) 的例子。 .RE .PP \fIKillOnlyUsers=\fR, \fIKillExcludeUsers=\fR .RS 4 設爲一個空格分隔的用戶名列表, 以影響 \fIKillUserProcesses=\fR 的效果: 若 \fIKillOnlyUsers=\fR 非空, 則表示 \fIKillUserProcesses=yes\fR 僅對列表內的用戶有效。 若 \fIKillExcludeUsers=\fR 非空, 則表示 \fIKillUserProcesses=yes\fR 僅對列表外的用戶有效。 \fIKillOnlyUsers=\fR 默認值爲空, \fIKillExcludeUsers=\fR 默認值爲 "root" , 並且 \fIKillExcludeUsers=\fR 的優先級比 \fIKillOnlyUsers=\fR 更高。 注意,若選項值爲空則表示忽略此選項(相當於不存在此選項)。 .RE .PP \fIIdleAction=\fR .RS 4 當系統持續處於空閒狀態超過 \fIIdleActionSec=\fR 所設置的時間後, 應該執行何種操作: "ignore"(無操作), "poweroff"(關閉系統並切斷電源), "reboot"(重新啓動), "halt"(關閉系統但不切斷電源), "kexec"(調用內核"kexec"函數), "suspend"(休眠到內存), "hibernate"(休眠到硬盤), "hybrid\-sleep"(同時休眠到內存與硬盤), "lock"(鎖屏) 。 默認值是 "ignore" .sp 注意,此功能依賴於用戶會話能夠正確的報告空閒狀態。 執行此處設置的動作需要滿足下列全部條件: (1)系統中不存在"idle \m[blue]\fBinhibitor\fR\m[]\&\s-2\u[2]\d\s+2"鎖(禁止進入空閒狀態的鎖) (2)所有會話都報告說它們正處於空閒狀態,並且持續處於空閒狀態超過了下文 \fIIdleActionSec=\fR 所設置的時間。 .RE .PP \fIIdleActionSec=\fR .RS 4 當系統持續處於空閒狀態超過此處設置的時長之後 將會自動執行 \fIIdleAction=\fR 設定的動作。 可以使用下面的時間單位後綴:"ms", "s", "min", "h", "d" ,若僅設爲一個正整數,那麼單位是秒。 .RE .PP \fIInhibitDelayMaxSec=\fR .RS 4 當系統中存在"delay \m[blue]\fBinhibitor\fR\m[]\&\s-2\u[2]\d\s+2"延遲鎖時,關閉/休眠系統的請求將被臨時延遲一段時間。 此選項可用於設置上述延遲的最大時長。 若超過這個時長之後,延遲鎖依然未被釋放,那麼將執行關閉/休眠系統的動作。 可以使用下面的時間單位後綴:"ms", "s", "min", "h", "d" ,若僅設爲一個正整數,那麼單位是秒。 默認值是5秒。 .RE .PP \fIHandlePowerKey=\fR, \fIHandleSuspendKey=\fR, \fIHandleHibernateKey=\fR, \fIHandleLidSwitch=\fR, \fIHandleLidSwitchDocked=\fR .RS 4 當按下硬件按鈕(關機、休眠到內存、休眠到硬盤、合上顯示屏)時, 應該執行何種操作: "ignore"(無操作), "poweroff"(關閉系統並切斷電源), "reboot"(重新啓動), "halt"(關閉系統但不切斷電源), "kexec"(調用內核"kexec"函數), "suspend"(休眠到內存), "hibernate"(休眠到硬盤), "hybrid\-sleep"(同時休眠到內存與硬盤), "lock"(鎖屏) 。 注意, 只監視帶有 "power\-switch" 標籤的 輸入設備的 key(按下按鈕)/lid(合上顯示屏) 事件。 如果主機插入了一個擴展塢(docking station) 或者連接了多個顯示器, 那麼"合上顯示屏"將執行 \fIHandleLidSwitchDocked=\fR 動作, 否則將執行 \fIHandleLidSwitch=\fR 動作。 下面是各選項的默認值: \fIHandlePowerKey=poweroff\fR 、 \fIHandleSuspendKey=suspend\fR 、 \fIHandleLidSwitch=suspend\fR 、 \fIHandleLidSwitchDocked=ignore\fR 、 \fIHandleHibernateKey=hibernate\fR .RE .PP \fIPowerKeyIgnoreInhibited=\fR, \fISuspendKeyIgnoreInhibited=\fR, \fIHibernateKeyIgnoreInhibited=\fR, \fILidSwitchIgnoreInhibited=\fR .RS 4 設置硬件按鈕(關機、休眠到內存、休眠到硬盤、合上顯示屏) 所觸發的操作(見上文)是否應該忽略 \m[blue]\fBinhibitor\fR\m[]\&\s-2\u[2]\d\s+2 鎖的存在。 "no" 表示遵守應用所持有的 inhibitor 鎖, 僅當所有的鎖都失效以後才執行所觸發的操作。 "yes" 表示無視 inhibitor 鎖的存在, 無條件的立即執行所觸發的操作。 下面是各選項的默認值: \fIPowerKeyIgnoreInhibited=no\fR 、 \fISuspendKeyIgnoreInhibited=no\fR 、 \fIHibernateKeyIgnoreInhibited=no\fR 、 \fILidSwitchIgnoreInhibited=yes\fR 。 .RE .PP \fIHoldoffTimeoutSec=\fR .RS 4 當開機/喚醒時間尚未超出此處設置的時間長度時, systemd 將延遲響應合上顯示屏(lid)硬件事件。 爲了能夠正確檢測可熱插拔的外接顯示器與擴展塢, 在剛開機之後的一段時間內忽略lid事件是非常有必要的。 若設爲零,systemd 將會立即響應lid事件, 但這有可能在內核完成初始化所有熱插拔設備之前。 只要你不在乎讓 systemd 去管理在系統關閉時被插入或拔出的設備, 那麼就可以設爲零。 默認值是30秒。 .RE .PP \fIRuntimeDirectorySize=\fR .RS 4 爲每個已登錄用戶設置運行時目錄(\fI$XDG_RUNTIME_DIR\fR)的最大尺寸。 若設爲絕對大小, 則可以使用基於1024的字節後綴:K, M, G, T 。 若設爲相對大小, 則可以設爲一個以物理內存大小爲基準的百分數(以 "%" 爲後綴)。 默認值是 10% 。 注意,這裏設置的值僅用於限制運行時目錄尺寸的上限, 因爲運行時目錄位於內存中(tmpfs), 所以實際所佔用的內存大小是隨着目錄內容的變化而變化的。 .RE .PP \fIInhibitorsMax=\fR .RS 4 控制最多允許同時存在多少個 inhibitor 鎖。 默認值是 8192 .RE .PP \fISessionsMax=\fR .RS 4 控制最多允許同時管理多少個用戶會話。默認值是 8192 。 根據PAM棧中 pam_systemd\&.so 模塊的不同配置, 超出數量限制的登錄會話可能會被直接拒絕、也可能會被允許登錄但不被 systemd\-logind 追蹤。 .RE .PP \fIUserTasksMax=\fR .RS 4 限制每個用戶可同時運行的最大操作系統任務數。 這實際上是設置了每個用戶的 slice 單元的 \fITasksMax=\fR 的值。詳見 \fBsystemd.resource-control\fR(5) 手冊。默認值是 33% ,對於默認設置的內核來說,在主機上等於 10813 ,但是在容器中的值可能會更小。 .RE .PP \fIRemoveIPC=\fR .RS 4 當用戶完全退出登錄時(也就是退出最後一個登錄會話時), 是否銷燬所有屬於該用戶的 SysV 與 POSIX IPC 對象。 這些IPC對象包括:SysV 信號/共享內存/消息隊列、POSIX 共享內存/消息隊列。 默認值 "yes" 表示銷燬,這樣可以確保當用戶完全退出登錄之後,不會再佔用任何IPC資源。 注意,無論如何設置此選項,root 用戶的IPC對象永遠不會被銷燬。 .RE .SH "參見" .PP \fBsystemd\fR(1), \fBsystemd-logind.service\fR(8), \fBloginctl\fR(1), \fBsystemd-system.conf\fR(5) .SH "NOTES" .IP " 1." 4 agetty .RS 4 \%[set $man.base.url.for.relative.links]//man/agetty.html .RE .IP " 2." 4 inhibitor .RS 4 \%http://www.freedesktop.org/wiki/Software/systemd/inhibit .RE .SH "跋" .br 本頁面中文版由中文 man 手冊頁計劃提供。 .PP 翻譯人員:金步國 .br 金步國作品集:http://www.jinbuguo.com .br .br 中文 man 手冊頁計劃:\fBhttps://github.com/man-pages-zh/manpages-zh\fR