systemctl命令来自英文词组system control的缩写,其功能是管理系统服务。从RHEL 7/ CentOS 7版本起,初始化进程服务init被替代为systemd服务,systemd初始化进程服务的管理是通过systemctl命令完成的,该命令涵盖了service、chkconfig、init、setup等多个命令的大部分功能。

语法格式:systemctl 参数 动作 服务名

常用参数:

-a显示所有单位 -q静默执行模式
-f覆盖任何冲突的符号链接-r显示本地容器的单位
-H设置要连接的主机名-s设置要发送的进程信号
-M设置要连接的容器名-t设置单元类型
-n设置要显示的日志行数--help显示帮助信息
-o设置要显示的日志格式--version显示版本信息

常用动作:

start启动服务 disable取消服务开机自启
stop停止服务status查看服务状态
restart重启服务list显示所有已启动服务
enable设置服务开机自启  

参考示例

启动指定的服务:

[root@linuxcool ~]# systemctl start sshd

停止指定的服务:

[root@linuxcool ~]# systemctl stop sshd

重启指定的服务:

[root@linuxcool ~]# systemctl restart sshd 

将指定的服务加入到开机启动项中:

[root@linuxcool ~]# systemctl enable sshd

查看指定服务的运行状态:

[root@linuxcool ~]# systemctl status sshd 
• sshd.service - OpenSSH server daemon 
   Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset> 
   Active: active (running) since Thu 2023-05-18 17:02:08 CST; 23s ago 
     Docs: man:sshd(8) 
           man:sshd_config(5) 
Main PID: 3015 (sshd) 
   Tasks: 1 (limit: 12391) 
  Memory: 1.5M 
  CGroup: /system.slice/sshd.service 
         └─3015 /usr/sbin/sshd -D -oCiphers=aes256-gcm@openssh.com,chacha20-p> 

May 18 17:02:08 linuxcool.com systemd[1]: Stopped OpenSSH server daemon. 
May 18 17:02:08 linuxcool.com systemd[1]: Starting OpenSSH server daemon... 
May 18 17:02:08 linuxcool.com sshd[3015]: Server listening on 0.0.0.0 port 22. 
May 18 17:02:08 linuxcool.com sshd[3015]: Server listening on :: port 22. 
May 18 17:02:08 linuxcool.com systemd[1]: Started OpenSSH server daemon. 
lines 1-16/16 (END) 

将指定的服务从开机启动项中取消:

[root@linuxcool ~]# systemctl disable sshd

显示系统中所有已启动的服务列表信息:

[root@linuxcool ~]# systemctl list-units --type=service 
  UNIT 						LOAD ACTIVE SUB DESCRIPTION 
  accounts-daemon.service 		loaded active running Accounts Service 
  atd.service 					loaded active running Job spooling tools 
  auditd.service 				loaded active running Security Auditing Service 
  avahi-daemon.service 			loaded active running Avahi mDNS/DNS-SD Stack 
  bolt.service 					loaded active running Thunderbolt system service 
  colord.service 				loaded active running Manage, Install and Gener> 
  crond.service 				loaded active running Command Scheduler
  cups.service 					loaded active running CUPS Scheduler
    
Author

这篇优质的内容由TA贡献而来

刘遄

《Linux就该这么学》书籍作者,RHCA认证架构师,教育学(计算机专业硕士)。