
當我執行時systemctl list-unit-files
不顯示我的服務命令,它不顯示我的服務(稱為範例)。這可能是什麼原因呢?
init.d 檔案位置:
/etc/rc.d/init.d/example
服務文件:
/run/systemd/generator.late/example.service
/run/systemd/generator.late/runlevel5.target.wants/example.service
/run/systemd/generator.late/runlevel4.target.wants/example.service
/run/systemd/generator.late/runlevel3.target.wants/example.service
/run/systemd/generator.late/runlevel2.target.wants/example.service
.服務文件:
# Automatically generated by systemd-sysv-generator
[Unit]
Documentation=man:systemd-sysv-generator(8)
SourcePath=/etc/rc.d/init.d/example
Description=SYSV: Application Suite
Before=runlevel2.target
Before=runlevel3.target
Before=runlevel4.target
Before=runlevel5.target
After=network-online.target
After=network.service
[Service]
Type=forking
Restart=no
TimeoutSec=5min
IgnoreSIGPIPE=no
KillMode=process
GuessMainPID=no
RemainAfterExit=yes
ExecStart=/etc/rc.d/init.d/example start
答案1
相反systemctl list-unit
,它會顯示所有已載入(活動)的單元,包括產生的單元。
僅list-unit-files
適用於實際安裝的單元檔案。我想調試生成的目錄看看/run
目錄就可以了。或者,您可以使用systemctl show example.service
查看記憶體中的屬性,它與單元檔案有一些重疊。
順便說一句,對於給定的單元名稱,您可以使用它systemctl is-enabled <name> -l
來查看它是否是“生成的”,或者它是靜態安裝的。