文章目录
- 背景
- 实现
- 创建 `服务别名.service` 文件,添加服务自启内容
- 将redis.service 文件拷贝至 /etc/systemd/system 目录
- 重载系统服务
- 添加开机自启并启动定义的系统服务
背景
服务器安装的是CentOS7
系统,服务器上运行有服务A,现在需要实现服务器关机重启后,服务A能够自动启动。
实现
创建 服务别名.service
文件,添加服务自启内容
服务别名是对当前服务的一个描述,通过服务别名可以很快就知道当前的服务是一个什么服务。
CentOS7
系统服务存放在 /etc/systemd/system
目录下,如下(博主自己虚拟机中的系统):
从上图中可以看到系统安装后系统自己注册的一些系统服务。
我们这里以 redis 服务为例子,首先我们准备两个脚本文件:启动redis服务脚本
、停止redis服务脚本
。
- 服务启动脚本的内容如下:
- 服务停止脚本的内容如下:
别忘记给这两个脚本添加可执行权限:chmod +x A.sh
- 使用 vim 命令编辑一个 redis.service 文件,并给文件添加服务自启内容,同学们记得保存。内容如下:
我们在 service 区块中用到了上面预先准备好的两个脚本,然后给 ExecStart 和 ExecStop 项配置了对应的执行脚本。
其他配置项基本可以通用(按照上图配置即可)。
不过应用在特殊场景下的系统服务,我们需要添加额外的配置项,所以这里给出两个参考供同学们自行学习:
CentOS 7 系列(四)系统服务配置 服务(Service)
将redis.service 文件拷贝至 /etc/systemd/system 目录
- 复制使用命令:
cp redis.service /etc/systemd/system
- 移动(相当于剪切)使用命令:
mv redis.service /etc/systemd/system
重载系统服务
目的是为了让系统知道我们自定义添加了这么一个系统服务(这里是redis.service)。
使用命令:
systemctl daemon-reload
添加开机自启并启动定义的系统服务
自启添加,使用命令:systemctl enable redis.service
启动系统服务,使用命令:systemctl start redis
,我们同时看一下运行状态,如下:
进程如下:
可以看到启动成功了。
A little bit of progress every day!Come on!