systemctl命令
Systemctl是一个systemd工具,主要负责控制systemd系统和服务管理器。
Systemd是一个系统管理守护进程、工具和库的集合,用于取代System V初始进程。Systemd的功能是用于集中管理和配置类UNIX系统。
在Linux生态系统中,Systemd被部署到了大多数的标准Linux发行版中,只有为数不多的几个发行版尚未部署。Systemd通常是所有其它守护进程的父进程,但并非总是如此。
服务所在位置: /usr/lib/systemd/system/
新旧指令比较:
任务 | 旧指令 | 新指令 |
使某服务自动启动 | chkconfig --level 3 httpd on | systemctl enable httpd.service |
使某服务不自动启动 | chkconfig --level 3 httpd off | systemctl disable httpd.service |
检查服务状态 | service httpd status | systemctl status httpd.service (服务详细信息) systemctl is-enabled httpd.service (仅显示是否 Active) |
显示所有已启动的服务 | chkconfig --list | systemctl list -units --type=service |
启动某服务 | service httpd start | systemctl start httpd.service |
停止某服务 | service httpd stop | systemctl stop httpd.service |
重启某服务 | service httpd restart | systemctl restart httpd.service |
某服务重新加载配置文件 | service httpd reload | systemctl reload httpd.service |
例子:
# systemctl #输出已激活单元
# systemctl list-units #输出已激活单元
# systemctl --failed #输出运行失败的单元
# systemctl list-unit-files #查看所有已安装服务
# systemctl start nginx #启动nginx
# systemctl stop nginx #停止nginx
# systemctl restart nginx #重启nginx
# systemctl reload nginx #重新加载nginx配置
# systemctl status nginx #输出nginx运行状态
# systemctl is-enabled nginx #检查nginx是否配置为自动启动
# systemctl enable nginx #开机自动启动nginx
# systemctl disable nginx #取消开机自动启动nginx
# systemctl help nginx #显示nginx的手册页
# systemctl daemon-reload #重新载入systemd,扫描新的或有变动的单元
# systemctl reboot #重启
# systemctl poweroff #退出系统并停止电源
# systemctl suspend #待机
# systemctl hibernate #休眠
# systemctl hybrid-sleep #混合休眠模式(同时休眠到硬盘并待机
# systemctl isolate graphical.target #等价于telinit 3 或 telinit 5