Services

如果 /etc/init.d 中沒有提到服務,為什麼要啟動它?

  • June 28, 2012

全新安裝 Fedora 17 和distcc-server後,我做了一個service distccd start,成功完成。

man service表示它只會在distccd處執行腳本/etc/init.d/distccd,但該文件不存在。 chkconfig也似乎不知道distccd,這可以通過 . 中沒有相關文件來證實/etc/rc[0-6].d確實存在一個/etc/sysconfig/distccd包含 distcc 守護程序的執行選項的文件,但我似乎找不到任何連結service到的東西/etc/sysconfig

我打字時怎麼service知道該怎麼做service distccd start

另外,我了解到 Fedora 17 可能會重定向servicesystemd/ systemctl。即使是這樣,我仍然沒有distccd/etc/systemd/{system,user}.

/etc/systemd用於使用者定義的服務。系統定義服務的預設位置是/lib/systemd/system/. 您可以覆蓋系統定義的服務/etc/systemd

有關 systemd 的更多資訊,請查看 systemd 的fedora wiki 頁面或查看systemd 文件

AFAIK,service依賴於存在於/etc/init.d.

distccd 可能沒有與初始化腳本一起打包。嘗試以下操作以將服務作為守護程序啟動:

distccd --daemon

如果可行,您可以創建自己的腳本/etc/init.d/distccd來觸發上述命令,然後您就可以將其視為具有service distccd start. 用作/etc/init.d/skeleton模板。

引用自:https://unix.stackexchange.com/questions/41856