有些时候,我们部署服务、中间件、数据库等应用的机器可能会因为机房停电、断电而宕机,这样大部分服务就随之关闭了,可能会需要手动去进行重启,我们可以通过 Linux 的开机启动来实现服务自动重启。
一、配置 /etc/rc.d/rc.local 文件
/etc/rc.d/rc.local : 用于添加开机启动命令
可以通过这个文件,添加我们的重启脚本,执行一些命令
1、配置重启脚本
假设,我们在 /home 目录下编写了一个 restart_auto_run.sh 的重启脚本
修改 /etc/rc.d/rc.local 文件,在最后一行添加我们的重启脚本
vim /etc/rc.d/rc.local
添加重启脚本的路径
/home/restart_auto_run.sh
2、 给 /etc/rc.d/rc.local 文件授权
local 文件默认是不执行的,所以需要给它授权
通过下面的命令给文件授权
$ chmod +x /etc/rc.d/rc.local
二、编写重启脚本
1、编写脚本
/home 目录下,通过 touch 命令创建一个重启脚本,restart_auto_run.sh
touch restart_auto_run.sh
为了测试,脚本中就添加一行代码,将当前时间追加到
/home/restart_auto_run.txt 文件中
#!/bin/bash
date >> /home/restart_auto_run.txt
date:获取当前时间
“>>”:追加符
/home/restart_auto_run.txt:追加写入的文件路径
2、给脚本授权
$ chmod +x /home/restart_auto_run.sh
三、测试
这里因为直接用本机装的 Linux 虚拟机来测试,就直接简单粗暴,关机再重启了
重启之后,连接上去,检查 home 目录,多了一个 txt 文件,如果文件不存在会自动创建的,文件的内容就是重启时追加的当前时间