systemctl命令用法

Posted forsake-dream

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了systemctl命令用法相关的知识,希望对你有一定的参考价值。

目录

systemctl命令用来对整个“systemd”的系统和服务进行管理

Unit Command #对unit执行操作的命令

1、list-units #默认命令,当COMMAND为空时,默认执行该命令列出已加载(已启动)的UNIT

2、start | stop | restart #立刻启动或者关闭或者重启某个Unit

3、reload #不关闭UNIT的情况下重新载入配置文件,让配置生效,只重新加载.conf类的文件

4、isolate #启动一个unit并关闭其他的。如果指定的Unit没写扩展名,则默认target。

5、status [PATTERN|PID] #显示整个系统的Unit状态信息包括树状关联信息,如果指定了[]中的内容,则显示指定Unit运行时的状态信息

6、list-dependencies #列出所依赖的服务,即给定的UNIT还需要哪些UNIT才能启动,默认列出default.target的依赖

Unit File Commands #对Unit文件执行操作的命令

1、list-unit-files #列出所有已经安装的Unit的配置文件,目录为/usr/lib/systemd/system/下的所有文件。

2、enable | disable #启用或禁用一个或多个Unit文件

3、get-default #获取default.target的名字。

4、set-default NAME #设置default.target。

Manager Lifecycle Commands #生命周期管理器的命令

1、daemon-reload #重新加载所有daemon的配置文件,包括.service等文件一起重新加载


systemctl命令用来对整个“systemd”的系统和服务进行管理

语法格式:

systemctl [OPTIONS] COMMAND [OBJECT] #OBJECT为UnitName,如果指定了OBJECT则只对这个Unit执行COMMAND,如果不指定则对全局Unit进行操作

  1. OPTIONS
    1. -t <Unit Type>对指定类型的unit进行操作
    2. --all

Unit Command #对unit执行操作的命令

1、list-units #默认命令,当COMMAND为空时,默认执行该命令列出已加载(已启动)的UNIT

  1. EXAMPLE
    1. systemctl -t service #查看所有service unit的信息,systemctl命令默认列出所有unit

2、start | stop | restart <Unit> #立刻启动或者关闭或者重启某个Unit

3、reload #不关闭UNIT的情况下重新载入配置文件,让配置生效,只重新加载.conf类的文件

systemctl reload <UnitName>

4、isolate #启动一个unit并关闭其他的。如果指定的Unit没写扩展名,则默认target。

这个命令的作用类似于老的init系统中修改运行级别的效果

systemctl isolate <UnitName>

  1. EXAMPLE
    1. systemctl isolate multi-user.target #启动multi-user.target这个unit并关闭其他(类似于切换成纯文本运行方式)
    2. systemctl isolate graphical.target #类似于切换成图形模式

5、status [PATTERN|PID] #显示整个系统的Unit状态信息包括树状关联信息,如果指定了[]中的内容,则显示指定Unit运行时的状态信息

pattern是匹配模式,可以使用正则表达式来通过关键字查找unit来显示包含这些关键字的unit的状态

systemctl status UNIT

  1. EXAMPLE
    1. systemctl status ssh.service #查看ssh.service这个unit的状态

 

6、list-dependencies #列出所依赖的服务,即给定的UNIT还需要哪些UNIT才能启动,默认列出default.target的依赖

systemctl list-dependencies [OPTIONS] [UnitName]

  1. OPTIONS
    1. --reverse #列出该ARGS表示该UNIT可以给谁提供依赖,即被谁需要,即启动哪些UNIT需要以这个UNIT启动为前提
  2. EXAMPLE
    1. systemctl list-dependencies sshd.service --reverse #列出sshd.service这个unit可以给谁提供依赖

Unit File Commands #对Unit文件执行操作的命令

1、list-unit-files #列出所有已经安装的Unit的配置文件,目录为/usr/lib/systemd/system/下的所有文件。

systemctl list-unit-fiiles [UnitName]

2、enable | disable <UNIT> #启用或禁用一个或多个Unit文件

3、get-default #获取default.target的名字。

 

获取引导进入的default.target。获取的TargetUnit名字是(会通过符号链接的方式)default.target的别名

4、set-default NAME #设置default.target。

 

设置引导进入的default.target。这个设置(会通过符号链接的方式)会用给定的TargetUnit给default.target起一个别名。相当于给一个target类型的unit建立了一个名为default.target的软链接

  1. EXAMPLE
    1. systemctl set-defult graphical.target #给graphical.target创建一个名为default.target的软连接到/etc/systemd/system/目录下

Manager Lifecycle Commands #生命周期管理器的命令

1、daemon-reload #重新加载所有daemon的配置文件,包括.service等文件一起重新加载

以上是关于systemctl命令用法的主要内容,如果未能解决你的问题,请参考以下文章

每天一个Linux命令(55)systemctl命令

CentOS 7 上systemctl 的用法

CentOS 7 上systemctl 的用法

CentOS 7 上systemctl 的用法

service与systemctl命令比较

操作系统systemctl命令