Linux命令之--systemctl详细理解及常用命令
Linux 服务管理两种方式service和systemctl
systemd是Linux系统最新的初始化系统(init),作用是提高系统的启动速度,尽可能启动较少的进程,尽可能更多进程并发启动。
systemd对应的进程管理命令是systemctl
1. systemctl命令兼容了service
即systemctl也会去/etc/init.d目录下,查看,执行相关程序
systemctl redis start
systemctl redis stop
# 开机自启动
systemctl enable redis
2. systemctl命令管理systemd的资源Unit
systemd的Unit放在目录/usr/lib/systemd/system(Centos)或/etc/systemd/system(Ubuntu)
systemctl –-version
1.查看版本号
systemctl –-version
2.管理服务(unit)
systemctl 提供了一组子命令来管理单个的 unit,其命令格式为:
systemctl [command] [unit]
command 主要有:
start:立刻启动后面接的 unit。
stop:立刻关闭后面接的 unit。
restart:立刻关闭后启动后面接的 unit,亦即执行 stop 再 start 的意思。
reload:不关闭 unit 的情况下,重新载入配置文件,让设置生效。
enable:设置下次开机时,后面接的 unit 会被启动。
disable:设置下次开机时,后面接的 unit 不会被启动。
status:目前后面接的这个 unit 的状态,会列出有没有正在执行、开机时是否启动等信息。
is-active:目前有没有正在运行中。
is-enable:开机时有没有默认要启用这个 unit。
kill :不要被 kill 这个名字吓着了,它其实是向运行 unit 的进程发送信号。
show:列出 unit 的配置。
mask:注销 unit,注销后你就无法启动这个 unit 了。
unmask:取消对 unit 的注销。
enable 和 disable 操作
比如我们为 etcd 服务创建了配置文件 /lib/systemd/system/etcd.service,然后执行 enable 命令:
systemctl enable etcd.service
查看 unit 的配置
使用 show 子命令可以查看 unit 的详细配置情况:
systemctl show etcd.service
注销与反注销 unit
如果我们想暂时的禁用某个 unit,比如 etcd.service,可以注销这个 unit,注销之后就无法再启动这个服务了:
systemctl mask etcd.service
unmask 操作就是删除掉 mask 操作中创建的链接。
查看系统上的 unit
systemctl 提供了子命令可以查看系统上的 unit,命令格式为:
systemctl [command] [--type=TYPE] [--all]
command 有:
list-units:列出当前已经启动的 unit,如果添加 -all 选项会同时列出没有启动的 unit。
list-unit-files:根据 /lib/systemd/system/ 目录内的文件列出所有的 unit。
--type=TYPE:可以过滤某个类型的 unit。
不带任何参数执行 systemctl 命令会列出所有已启动的 unit:
列举已经启动的unit
systemctl list-units (或者直接 sudo systemctl)
————————————————
几个简单的指令用来切换操作模式,大致如下所示:
sudo systemctl poweroff # 系统关机
sudo systemctl reboot # 重新开机
sudo systemctl suspend # 进入暂停模式
sudo systemctl hibernate # 进入休眠模式
sudo systemctl rescue # 强制进入救援模式
sudo systemctl emergency # 强制进入紧急救援模式
————————————————
原文链接:https://blog.csdn.net/skh2015java/article/details/94012643
浙公网安备 33010602011771号