自有服务概述
服务是一些特定的进程,自有服务就是系统开机后就自动运行的一些进程,一旦客户发出请求,这些进程就自动为他们提供服务,windows系统中,把这些自动运行的进程,称为"服务"
举例:当我们使用SSH客户端软件连接linux的时候,我们的服务器为什么会对连接做出响应?是因为SSH服务开机就自动运行了。
所谓自有服务,简单来说,可以理解为Linux系统开机自动运行的服务(程序)。
systemctl管理服务命令
CentOS6版本:
在Centos7之前,通过service 和 chkconfig两个命令来管理服务
service: 负责启动,停止服务,显示服务状态
chkconfig: 指定服务是否开机启动
service network start|stop|restart
CentOS7版本:
从Centos7开始,统一使用systemctl来管理服务, systemctl同时具有service和chkconfig命令的功能。
systemctl start|stop|restart network
显示服务
命令:systemctl
作用:管理服务
语法:#systemctl [选项]
选项:list-units --type service --all:列出所有服务(包含启动的和没启动的)
list-units --type service:列出所有启动的服务
示例1 列出所有服务,包括已运行的和没有运行的
列出所有服务,包括已运行的和没有运行的
systemctl list-units --type service --all
示例2 列出所有已启动服务
列出所有已启动服务
systemctl list-units --type service
示例3 搭配管道符筛选出特定的服务
但是如上显示所有服务实际工作中并不会用到,实际工作中我们一般只关注我们需要的服务,所以就需要搭配管道符筛选出我们需要关注的服务
案例 使用systemctl列出network服务信息
systemctl list-units --type service | grep network
linux系统服务管理
systemctl status 查看服务状态
查看系统服务状态
systemctl status 系统服务名称
示例1 查看指定服务状态
案例 使用systemctl 查看sshd服务状态
systemctl status sshd
systemctl stop 停止服务
systemctl stop 系统服务的名称
示例1 停止指定服务
案例1 使用systemctl 停止network服务
systemctl stop network
当停止了network的时候可以看到MobaXterm 软件就卡住了,这是因为MobaXterm 软件想要连接linux系统需要sshd服务和network服务,当我们停止了network服务之后,连接也就中断了,这个时候就需要重新去linux终端里打开network服务MobaXterm 才能连接
systemctl start 启动服务
systemctl restart 重启服务
systemctl restart 系统服务的名称
等价于
systemctl stop 系统服务的名称
systemctl start 系统服务的名称
和上面的一样,这里就不赘述了
reload热重载技术
systemctl reload 系统服务名称
reload : 重新加载指定服务的配置文件,(并非所有服务都支持reload,通常使用restart)
有些服务,如Nginx,更改了配置文件,但是不能重启Nginx服务,只想立即让我们配置文件的更改生效,则就可以使用热重载技术了.
示例1 使用热重载加载服务配置
systemctl reload crond
注意:这里的crond服务并没有重启,只是重新加载了配置文件
服务持久化(开机自启与开机不自启)
所谓服务持久化,就是服务在开机的时候,是否自动启动。
开机自启
systemctl enable 系统服务的名称
示例1 将一个服务设置位开机自启
案例,将network设置位开机自启
systemctl enable network
以上提示代表network.service不是一个本地的系统服务,所以想设置开机自启需要使用/sbin/chkconfig进行操作
/sbin/chkconfig network on
在linux系统中,并不是所有服务都支持systemctl enable 这种方式设置开启自启的方式,这种方式只能针对系统服务,如果是非系统服务就需要使用/sbin/chkconfig network on 来进行操作
注意,超级管理员不需要使用/sbin
直接使用 chkconfig network on 来操作就好
如下
那么同样的,/sbin/chkconfig network 这个语法拥有开启,关闭和重启的用法
分别on/off/reset
开机不自启
systemctl disable 系统服务的名称
示例1 使用systemctl 将服务设置为开机不自启
案例:把crond计划任务的服务信息从开机自启动中移除
systemctl disable crond
systemctl总结
参数 | 含义 |
---|---|
list-units --type service --all | 列出所有服务 |
list-units --type service | 列出所有启动的服务 |
start | 启动指定服务 |
stop | 停止指定服务 |
status | 检查指定服务的运行状况 |
restart | 重启指定服务 |
reload | 重新加载指定服务的配置文件(并非所有服务都支持reload,通常使用restart) |
enable | 指定服务开机自动启动 |
disable | 取消服务开机自动启动 |