Debian
如何區分systemd中的使用者服務和系統服務?
我昨天問了一個問題,其中一個評論是它被共享為“使用者服務”。現在如何區分“使用者服務”和系統服務?
根據此文件,可以通過路徑區分單元文件。
例如; 如果單元文件在
/etc/systemd/system /usr/lib/systemd/system /run/systemd/system
目錄,這個單元屬於系統。
如果它在
~/.config/systemd/user/* /etc/systemd/user/* $XDG_RUNTIME_DIR/systemd/user/* /run/systemd/user/* ~/.local/share/systemd/user/* /usr/lib/systemd/user/*
目錄,它屬於使用者。
*根據系統單元目錄的*systemd(1)手冊頁:
systemd 系統管理器從各個目錄讀取單元配置。想要安裝單元文件的包應將它們放在以下目錄返回的目錄中:
pkg-config systemd --variable=systemdsystemunitdir
檢查的其他目錄是:
/usr/local/lib/systemd/system /usr/lib/systemd/system
使用者配置始終優先。
pkg-config systemd --variable=systemdsystemconfdir
返回系統配置目錄的路徑。軟體包只能使用 systemctl(1) 工具的啟用和禁用命令來更改這些目錄的內容。systemd.unit(5) 中提供了完整的目錄列表。
然後對於使用者單元目錄:
類似的規則適用於使用者單元目錄。但是,這裡是 XDG 基本目錄規範
$$ 6 $$跟隨尋找單位。應用程序應將其單元文件放置在以下目錄返回的目錄中:
pkg-config systemd --variable=systemduserunitdir
全域配置在以下報告的目錄中完成:
pkg-config systemd --variable=systemduserconfdir
systemctl(1) 工具的啟用和禁用命令可以處理全域(即對所有使用者)和私有(對一個使用者)啟用/禁用單元。systemd.unit(5) 中提供了完整的目錄列表。
請注意,這些是systemd 的規則,指示打包者在適當的位置放置不同的文件,打包者必須正確遵循這些規則。