systemctl命令初步说明

[TOC]

  • LinuxSystemctl是一个系统管理守护进程, 工具和库的集合, 用于取代System V, service和chkconfig命令, 初始进程主要负责控制systemd系统和服务管理器.
  • 通过Systemctl –help可以看到该命令主要分为:
    • 查询或发送控制命令给systemd服务,
    • 管理单元服务的命令,
    • 服务文件的相关命令, 任务, 环境, 快照相关命令,
    • systemd服务的配置重载, 系统开机关机相关的命令.

1. 对单元的操作

systemctl list-unit-files [-t type] # 列出所有可用单元
systemctl list-units                # 列出所有运行中单元
systemctl –-failed                  # 列出所有失败单元
systemctl is-enabled crond.service  # 检查某个单元(如 crond.service)是否启用

2. 对服务的操作

# 0. 列出所有服务
systemctl list-unit-files –t service 
# 1. Linux中如何启动, 重启, 停止, 重载服务以及检查服务(如 httpd.service)状态
systemctl [ start | restart | stop | reload | status ] httpd.service
# 2. 重启/停止/挂起/休眠系统或使系统进入混合睡眠
systemctl [ reboot | halt | suspend | hibernate | hybrid-sleep ]
# 3. 启动救援模式/紧急模式
systemctl [ rescue | emergency ]
# 4. 如何激活服务并在开机时启用或禁用服务(即系统启动时自动启动mysql.service服务)
systemctl [ enable | disable ] mysql.service 
# 5. 判断某个服务的状态, 可用于脚本
systemctl [is-active|is-enabled|is-failed|isolate|is-system-running] unit
# 6. 如何屏蔽(让它不能启动)或显示服务 (如ntpdate.service)
systemctl mask ntpdate.service
ln -s ‘/dev/null”/etc/systemd/system/ntpdate.service’
systemctl unmask ntpdate.service
rm ‘/etc/systemd/system/ntpdate.service’
# 7. 使用systemctl命令杀死服务
systemctl kill crond 
# 8. 检查某个服务的所有配置细节
systemctl show mysql
# 9. 获取某个服务(httpd)的依赖性列表
systemctl list-dependencies httpd.service
    # static 不可被手动开启, 只能被其他unit带启
    # mask   不会被别的unit带启, 默认设置disable时会被其他服务带动启动
    # unmask 取消mask设置
  • 注意:当我们使用systemctl的start,restart,stop和reload命令时,终端不会输出任何内容,只有status命令可以打印输出.

3. 启动运行等级3或运行等级5

# 列出当前使用的运行等级
systemctl get-default
systemctl isolate runlevel5.target # 或
systemctl isolate graphical.target
systemctl isolate runlevel3.target # 或
systemctl isolate multiuser.target
# 设置多用户模式或图形模式为默认运行等级
systemctl set-default runlevel3.target
systemctl set-default runlevel5.target

4. 列出所有系统挂载点 (也可以设置启动挂载或不挂载)

systemctl list-unit-files -t mount

你可能感兴趣的:(systemctl命令初步说明)