服务是必不可少的后台进程,它一般随系统启动,并在死机时关掉。假如你是系统管理员,这么你会定期处理服务。假如你是普通桌面用户,你可能会碰到须要重启服务的情况,比如安装Barrier来用于在计算机之间共享键盘和鼠标。或在使用ufw设置防火墙时。
明天,我将向你展示两种管理服务的形式。你将学习在Ubuntu或任何其他Linux发行版中启动、停止和重启服务。
systemd与init
现在,Ubuntu和许多其他发行版都使用systemd而不是旧的init。
在systemd中,可以使用systemctl命令管理服务。
在init中,你可以使用service命令管理服务。
你会注意到,虽然你的Linux系统使用systemdRAR FOR LINUX,它依然可以使用service命令(与init系统一起使用的)。这是由于service命令实际上已重定向到systemctl。systemd引入了向后兼容性,由于系统管理员们习惯使用service命令。
在本教程中,我将同时展示systemctl和service命令。
我用的是Ubuntu18.04linux加载服务命令,但其他版本的过程也一样。
方式1:使用systemd在Linux中管理服务
我从systemd开始,由于它被广泛接受。
1、列出所有服务
为了管理服务,你首先须要晓得系统上有什么服务可用。你可以使用systemd的命令列举Linux系统上的所有服务:
systemctl list-unit-files --type service -all
此命令将输出所有服务的状态。服务状态有启用enabled、禁用disabled、屏蔽masked(在取消屏蔽之前处于非活动状态)、静态static和已生成generated。
与grep命令结合,你可以仅显示正在运行的服务:
sudo systemctl | grep running
如今linux加载服务命令,你晓得了怎样引用所有不同的服务,你可以开始主动管理它们。
注意:下述命令中的应当用你想管理的服务名取代。(例如:network-manager、ufw等)
2、启动服务
要在Linux中启动服务,你只需使用它的名子:
systemctl start
3、停止服务
要停止systemd服务,可以使用systemctl命令的stop选项:
systemctl stop
4、重启服务
要重启systemd服务,可以使用:
systemctl restart
5、检查服务状态
你可以通过复印服务状态来确认你已然成功执行特定操作:
systemctl status
这将以以下形式输出:
这是systemd的内容。现今切换到init。
方式2:使用init在Linux中管理服务
init的命令和systemd的一样简单。
1、列出所有服务
要列举所有Linux服务,使用:
service --status-all
后面的[–]代表禁用,[+]代表启用。
2、启动服务
要在Ubuntu和其他发行版中启动服务,使用命令:
service start
3、停止服务
停止服务同样简单。
service stop
4、重启服务
假如你想重启服务,命令是:
service restart
5、检查服务状态
据悉linux是什么,要检测是否达到了预期的结果,你可以输出服务状态:
service status
这将以以下方法输出:
最重要的是,这将告诉你某项服务是否处于活跃状态(正在运行)。
总结
明天,我详尽介绍了两种在Ubuntu或任何其他Linux系统上管理服务的特别简单的方式。希望本文对你有所帮助。
你更喜欢哪种方式?让我在下边的评论中晓得!
via:
作者:Sergiu选题:lujun9972译者:geekpi校对:wxy
本文由LCTT原创编译,Linux中国荣誉推出