Linux.中国 - 开源社区

 找回密码
 骑士注册

QQ登录

微博登录


真的超赞!用systemd命令来管理linux系统!

2014-9-12 09:24    评论: 11 收藏: 9 分享: 5    

Systemd是一种新的linux系统服务管理器。

它替换了init系统,能够管理系统的启动过程和一些系统服务,一旦启动起来,就将监管整个系统。在本文中,我们用的是安装有 systemd 216 版本的centos 7.0,其最新版本可以从 freedesktop.org 下载得到

因为linux操作系统里出现的这一个新人,PID 1被“systemd”占据了,这能通过pstree命令看到。

[root@linoxide ~]# pstree

那么现在让我们来探索systemd擅长什么,它又有多大的可能性成为sysVinit的新的替代品。

1. 更快启动

sysvinit一次一个串行地启动进程。

而Systemd则并行地启动系统服务进程,并且最初仅启动确实被依赖的那些服务,极大地减少了系统引导的时间。

你可以用下面的命令看到系统引导用时:

[root@linoxide ~]# systemd-analyze

使用 time 参数也能够显示同样的内容。

[root@linoxide ~]# systemd-analyze time

如果你想以进程初始化所占用时间排序打印出所有正在运行的单元列表,那么systemd-analyze命令可以帮助你完成这个任务。

[root@linoxide ~]# systemd-analyze blame

上面的截屏只显示了小部分进程,你可以就像less分页器那样用箭头滚动列表。

2. systemctl 命令

systemctl命令是自systemd出现以来被广泛讨论的命令。你可以通过这个命令管理你的整个系统,让我们通过探究这个命令来更进一步。

2.1 列出单元

systemctl命令可以带上list-units,也可以什么选项都不带来列出所有正在运行的单元。

[root@linoxide ~]# systemctl

[root@linoxide ~]# systemctl list-units

2.2 列出失败的单元

运行失败的单元可以用带--failed选项的命令显示出来。

[root@linoxide ~]# systemctl --failed

你可以在这篇文章很多地方看到systemctl的用法。

3. 管理服务

让我们来看看systemd是怎么管理系统服务的。

3.1 激活的服务

所有被激活的服务可以同下面这条命令来查看。

[root@linoxide ~]# systemctl list-units -t service

3.2 服务状态

在sysvinit中,我们可以用“service”命令来管理服务,但在systemd中,我们用systemctl这个命令。 我们可以用下面这个命令来查看服务是否在运行。

[root@linoxide ~]# systemctl status dnsmasq

3.3 启动一个服务

用下面这条命令来启动服务。

[root@linoxide ~]# systemctl start dnsmasq

对应于service命令,这个命令不进行输出。但是毋庸置疑,我们可以通过再次查看这个刚刚被启动的服务的status(状态)来确认他是否被成功地启动了。

3.4 停止一个服务

现在聪明的你一定知道怎么在systemd下用命令来关闭服务了吧。

[root@linoxide ~]# systemctl stop dnsmasq

3.5 重启一个服务

类似的,重启系统服务是用‘systemctl restart’来管理的。

[root@linoxide ~]# systemctl restart dnsmasq

3.6 重新加载一个服务

在我们需要重新加载服务的配置文件又不想重启这个服务(例如ssh)时,我们可以用这个命令。

[root@linoxide ~]# systemctl reload sshd

虽然上述几个命令的语法是可以工作的,但是官方文档建议我们用下面这种语法形式来运行命令(LCTT 译注,即使用在服务名后面跟上“.service”的完整名称):

[root@linoxide ~]# systemctl status dnsmasq.service

12下一页
查看其它分页:

发表评论


最新评论

我也要发表评论

来自上海的 Chrome 47.0|Mac 10.11 用户 2016-1-15 22:17
1
pencilstart 发表于 2014-9-12 10:03 的评论:
总是换这些基本的工具。真讨厌。。LINUX比其它系统烈士的地方就在这里,同一件事可以用3个以上工具去完成。而且,在这个LINUX中有的工具,在其它LINUX又不一定有。这种非稳定状态,永远只能成为小众、GEEK的系统。这些都是重复无价值的工作。
呵呵,真是有趣
回复
丶Nature 2015-4-20 14:47
其实还没接触这个systemctl,事实上是改掉了习惯。
1 回复
文剑一飞 2014-10-12 10:35
systemd破坏UNIX的哲学?王垠说过UNIX哲学是最糟糕的。
9 回复
koolar 2014-9-12 12:20
好,Fedora已经用systemctl了。
6 回复
更吹落灬星如雨 2014-9-12 12:03  新浪微博网友评论
//@Linux中国:大家怎么看?//@pencilstart: 总是换这些基本的工具。真讨厌。。LINUX比其它系统烈士的地方就在这里,同一件事可以用3个以上工具去完成。而且,在这个LINUX中有的工具,在其它LINUX又不一定有。这种非稳定状态,永远只能成为小众、GEEK的系统。这些都是重复无价值的工作。
回复
卜路奈特 2014-9-12 11:03  新浪微博网友评论
mac就是等额选举,windows是间接差额选举,linux就是普选。。。 //@Linux中国:大家怎么看?//@pencilstart: 总是换这些基本的工具。真讨厌。
9 回复
SaintAK 2014-9-12 10:33  新浪微博网友评论
systemd依然可以service xxx start.另外windows下经常换工具这种事情也不少吧。//@Linux中国: 大家怎么看?//@pencilstart: 总是换这些基本的工具。真讨厌。。LINUX比其它系统烈士的地方就在这里,同一件事可以用3个以上工具去完成。而且,在这个LINUX中有的工具,在其它LINUX又不一定有。
1 回复
Linux中国 2014-9-12 10:33  新浪微博网友评论
大家怎么看?//@pencilstart: 总是换这些基本的工具。真讨厌。。LINUX比其它系统烈士的地方就在这里,同一件事可以用3个以上工具去完成。而且,在这个LINUX中有的工具,在其它LINUX又不一定有。这种非稳定状态,永远只能成为小众、GEEK的系统。这些都是重复无价值的工作。
回复
_Xugen 2014-9-12 10:33  新浪微博网友评论
超赞!
回复
pencilstart 2014-9-12 10:03  新浪微博网友评论
总是换这些基本的工具。真讨厌。。LINUX比其它系统烈士的地方就在这里,同一件事可以用3个以上工具去完成。而且,在这个LINUX中有的工具,在其它LINUX又不一定有。这种非稳定状态,永远只能成为小众、GEEK的系统。这些都是重复无价值的工作。
3 回复
文艺复兴记 2014-9-12 10:03  新浪微博网友评论
据说可以方便地杀掉进程树,这个feature比较有用。
1 回复

热点评论

文剑一飞 2014-10-12 10:35
systemd破坏UNIX的哲学?王垠说过UNIX哲学是最糟糕的。
9
卜路奈特 2014-9-12 11:03
mac就是等额选举,windows是间接差额选举,linux就是普选。。。 //@Linux中国:大家怎么看?//@pencilstart: 总是换这些基本的工具。真讨厌。
9
koolar 2014-9-12 12:20
好,Fedora已经用systemctl了。
6
pencilstart 2014-9-12 10:03
总是换这些基本的工具。真讨厌。。LINUX比其它系统烈士的地方就在这里,同一件事可以用3个以上工具去完成。而且,在这个LINUX中有的工具,在其它LINUX又不一定有。这种非稳定状态,永远只能成为小众、GEEK的系统。这些都是重复无价值的工作。
3
丶Nature 2015-4-20 14:47
其实还没接触这个systemctl,事实上是改掉了习惯。
1
返回顶部

分享到微信朋友圈

打开微信,点击底部的“发现”,
使用“扫一扫”将网页分享至朋友圈。