Aid*_*tis 67 service systemctl
也许这是一个微不足道的问题,但对我来说并不完全清楚。在我们的一台服务器上,我们运行了一些后台进程,它们以 开头,service
而其他一些以 开头systemctl
,如下所示:
$ service nginx start
$ systemctl start gunicorn
Run Code Online (Sandbox Code Playgroud)
这两个命令有什么区别?哪一种是处理后台服务的首选方式?如何配置首选命令?
sho*_*hok 71
service
是一个“高级”命令,用于在不同的 unix 和 linux 中启动和停止服务。根据“低级”服务管理器,service
重定向不同的二进制文件。
例如,在 CentOS 7 上它重定向到systemctl
,而在 CentOS 6 上它直接调用相关/etc/init.d
脚本。另一方面,在较旧的 Ubuntu 版本中,它重定向到upstart
service
足以进行基本的服务管理,而直接调用systemctl
提供了更多的控制选项。
小智 19
systemctl
基本上是一个更强大的版本service
。
Withservice
您只能执行与服务相关的命令(即status
, reload
, restart
),而 withsystemctl
您可以使用更高级的命令,例如:
systemctl is-failed name.service # check if service failed to load
或掩蔽服务:
systemctl mask name.service
这个页面上有很多来自 Ask Ubuntu的好信息。
小智 6
systemctl
是控制守护进程/服务的主要实用程序systemd
,
而service
命令是SysVinit
世界上的传统实用程序。
systemd 的功能之一是与 SysVinit/legacy 命令兼容,
因此,如果您拥有该systemctl
命令,
service foo start
它将是systemctl start foo
.
同样的故事chkconfig
。
归档时间: |
|
查看次数: |
35512 次 |
最近记录: |