linux服务管理:systemctl指令 | service指令
摘要
linux在管理服务时有两个指令,一个是service指令,一个是systemctl指令,前者几乎已经过时了,但是还有一些指令会使用
一、service服务指令
1. 指令说明
指令 | 功能 | 说明 | 选项 |
---|---|---|---|
`service 服务名 [start | stop | restart | reload |
- 指令:
service 服务名 [start | stop | restart | reload | status]
- 在CentOS7.0后很多服务不再使用service ,而是systemctl
- service指令管理的服务在/etc/init.d查看
2. 启动/关闭服务案例
使用service指令,查看、关闭、启动network
- 查看
service status network
- 关闭
service stop network
- 启动
service start network
二、systemctl指令
1. systemctl介绍
systemctl管理指令
- 基本语法:
systemctl [start | stop | restart | status] 服务名
- systemctl指令管理的服务在
/usr/lib/systemd/system
查看
systemctl设置服务的自启动状态
systemctl list-unit-files [ | grep服务名]
(查看服务开机启动状态, grep可以进行过滤)systemctl enable 服务名
(设置服务开机启动)systemctl disable 服务名
(关闭服务开机启动)systemctl is-enabled 服务名
(查询某个服务是否是自启动的)
应用案例:
- 查看当前防火墙的状况,关闭防火墙和重启防火墙。
细节讨论:
- 关闭或者启用防火墙后,立即生效。[telnet测试某个端口即可]
- 这种方式只是临时生效,当重启系统后,还是回归以前对服务的设置。
- 如果希望设置某个服务自启动或关闭永久生效,要使用systemctl [enable|disable] 服务名
2. systemctl指令
(1) 查看服务列表
(2) 查看服务状态
查看服务状态
① 查看所有服务
systemctl list-unit-files [ | grep服务名]
② 查看单个服务状态
下面是查看防火墙服务
当然还有另一种方式
指令 | 功能 | 说明 | 选项 |
---|---|---|---|
systemctl is-enabled 服务名 |
查看服务的状态,这个是查看自启动状态 |
- 后面加不加
.service
都可以
指令 | 功能 | 说明 | 选项 |
---|---|---|---|
systemctl status 服务名 |
查看服务的状态,这个是查看运行状态 |
(3) 设置服务自启动/关闭
指令 | 功能 | 说明 | 选项 |
---|---|---|---|
systemctl enable 服务名 |
开启服务 | ||
systemctl disable 服务名 |
关闭服务 |
三、start|stop & enable|disable
- 使用
systemctl start|stop 服务名
可以在本次开机的时候开启或者关闭,但是下次开机时按照默认设置自开启/关闭 - 使用
systemctl enable|disable 服务名
设置的是 开机时的 自启动/关闭状态,但是并不能设置本次开机时的状态 systemctl status 服务名
可以查看 start|stop的状态,比如运行中,会显示runningsystemctl is-enable 服务名
可以查看系统启动时的状态,只显示 enable|disable
四、应用案例
查看当前防火墙的状况,关闭防火墙和重启防火墙。
systemctl status firewalld
systemctl stop firewalld
systemctl start firewall