命令systemctl
-
名称: 系统(system)控制(control)和服务(service)管理(manager)
-
用途: 查询或向systemd管理器发送控制命令
-
语法:
]# systemctl [选项] {命令} ...
-
选项:
-a --all 显示所有已加载的单元 -p --property=NAME 指定名称显示 -t --type=TYPE 列出指定类型的单元 automount device path snapshot swap timer busname mount service socket target --state=STATE 列出指定状态的单元 active elapsed inactive loaded not-found running waiting dead exited listening mounted plugged stub -h --help 显示帮助信息 --version 显示版本信息 --system 连接到系统管理器 -H --host=[USER@]HOST 远程主机操作 -M --machine=CONTAINER 本地容器操作 -l --full 输出时不要省略单元名 -r --recursive 显示主机和本地容器的单元列表 --reverse 用“list-dependencies”显示反向依赖 --job-mode=MODE 指定在排队新作业时处理已排队作业的方式 --show-types 在显示套接字时,显示它们的类型 -i --ignore-inhibitors 当关闭或睡眠时忽略禁止项 --kill-who=WHO 信号发给谁 -s --signal=SIGNAL 发送哪个信号 --now 立即启动或停止单元 -q --quiet 抑制输出 --no-block 不要等到单元操作结束 --no-wall 在停止/关机/重启之前不要发送墙消息 --no-reload 启用/禁用单元文件后,不要重新加载守护进程 --no-legend 不要打印图例(列标题和提示) --no-pager 不要用管道输出页面 --no-ask-password 不要求系统密码 --global 全局启用/禁用单元文件 --runtime 暂时启用单元文件 -f --force 启用单元文件时,在关闭时覆盖现有符号链接,立即强制执行操作 --preset-mode= 仅应用“启用”、“禁用”或所有预置 --root=PATH 启用指定根目录中的单元文件 -n --lines=INTEGER 要显示的日志条数 -o --output=STRING 更改日志输出模式 short, short-iso, short-precise, short-monotonic, verbose, export,json, json-pretty, json-sse, cat --plain 将单元依赖项打印为列表而不是树
-
命令:
-
Unit 命令:
start NAME... 启动(激活)一个或多个单位 stop NAME... 停止(停用)一个或多个单位 reload NAME... 重新加载一个或多个单元 restart NAME... 启动或重启一个或多个单元 is-active PATTERN... 检查单元是否处于活动状态 is-failed PATTERN... 检查单元是否失败 list-units [PATTERN...] 列出已加载单元 list-sockets [PATTERN...] 列出按地址顺序加载的套接字 list-timers [PATTERN...] 列出按下一个时间间隔排序的已加载计时器 try-restart NAME... 若已激活,则重新启动一个或多个单元 reload-or-restart NAME... 如果可能,重新加载一个或多个单元,否则启动或重新启动 reload-or-try-restart NAME... 如果可能,则重新加载一个或多个单元,否则,重新启动 isolate NAME 启动一个单元,停止其它所有单元 kill NAME... 发送信号到一个单元的进程 status [PATTERN...|PID...] 显示一个或多个单元的运行状态 show [PATTERN...|JOB...] 显示一个或多个单元/作业的信息 cat PATTERN... 显示一个或多个单元的文件信息 set-property NAME ASSIGNMENT... 设置一个单元的一个或多个属性 help PATTERN...|PID... 显示一个或多个单元的手册 reset-failed [PATTERN...] 重置所有、一个或多个单元的失败状态 list-dependencies [NAME] 递归显示该单元所需要的单元
-
Unit 文件命令:
list-unit-files [PATTERN...] 列出已安装的文件单元 enable NAME... 设置一个或多个单元文件的自启 disable NAME... 关闭一个或多个单元文件的自启 reenable NAME... 重新设置一个或多个单元文件的自启 preset NAME... 根据预置配置启用/禁用一个或多个单元文件 preset-all 根据预设配置启用/禁用所有单元文件 is-enabled NAME... 检查是否设置了单元文件的自启 mask NAME... 屏蔽一个或多个单位 unmask NAME... 取消屏蔽一个或多个单位 link PATH... 将一个或多个单元文件链接到搜索路径 add-wants TARGET NAME... 在指定的一个或多个单元上添加目标的“wants”依赖项 add-requires TARGET NAME... 添加目标对指定的一个或多个单元的依赖关系 edit NAME... 编辑一个或多个单元文件 get-default 获取默认系统模式的名称 set-default NAME 设置默认系统模式
-
Machine 命令:
list-machines [PATTERN...] 列出本地容器和主机信息
-
Job 命令:
list-jobs [PATTERN...] 列出jobs cancel [JOB...] 取消所有、一个或多个作业
-
Snapshot 命令:
snapshot [NAME] 创建一个快照 delete NAME... 删除一个或多个快照
-
Environment 命令:
show-environment 显示环境信息 set-environment NAME=VALUE... 设置一个或多个环境变量 unset-environment NAME... 取消设置一个或多个环境变量 import-environment [NAME...] 导入所有或部分环境变量
-
Manager Lifecycle 命令:
daemon-reload 重新加载systemd管理器配置 daemon-reexec 重新执行systemd管理
-
System 命令:
is-system-running 检查系统是否完全运行 default 进入系统默认模式 rescue 进入系统救援模式 emergency 进入系统应急模式 halt 关闭并停止系统 poweroff 关闭系统 reboot [ARG] 关闭并重启系统 kexec 使用kexec关闭并重新启动系统 exit 登出 switch-root ROOT [INIT] 切换到不同的根文件系统 suspend 暂停系统 hibernate 休眠系统 hybrid-sleep 休眠并挂起系统
-
-
实例:
#启动服务
]# systemctl start httpd
#关闭服务
]# systemctl stop httpd
#重启服务
]# systemctl restart httpd
#查看服务状态
]# systemctl status httpd
#设置服务自启
]# systemctl enable httpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
#关闭服务自启
]# systemctl disable httpd
Removed symlink /etc/systemd/system/multi-user.target.wants/httpd.service.
#查看服务的存活状态
]# systemctl is-active httpd
active
#列出所有服务,包括没启动的
]# systemctl -t service -a
#列出文件单元及状态
]# systemctl list-unit-files