![服务与 initctl](https://linux22.com/image/843186/%E6%9C%8D%E5%8A%A1%E4%B8%8E%20initctl%20.png)
为什么有些守护进程用完了service
,而有些用完了initctl
?这两种工具是否做同样的事情,而用户使用哪种工具只是个人喜好问题?
例如
sudo service --status-all
对比
sudo initctl list
在我的特定实例中,cron
initctl 用完了,ssh
服务也用完了。但在 上Fedora
,例如,这两者都将处于 中systemctl
。
答案1
initctl list 将显示使用 upstart 本机文件管理的进程。service 将显示使用更传统的 init 脚本的进程。systemctl 将显示使用 systemd 本机格式的进程。
Ubuntu 正在从旧脚本迁移到 upstart 作业,对于您而言,cron 由 upstart 管理,而 ssh 仍然是常规的 initscript。Upstart 确实提供了一些 init script 所不具备的功能(例如,如果服务终止则自动重启、按需启动等),因此鼓励打包者迁移到 upstart 作业。
但最终,是的,它们都执行启动服务的相同基本工作,但是方式不同,因此它们不能完全互换。