天天看点

Linux系统下如何设置开机自动运行脚本?以Redis开机自启为例

参考链接:​​https://baijiahao.baidu.com/s?id=1722174560616569543&wfr=spider&for=pc​​

前言:

最近在安装Redis的时候,想找下Redis开机自启的功能,在网上找了很多的教程,貌似很多都是没太大用的。

自己试了一种方法是通过reids自带的utils/install_server.sh,来执行,但是我试了,不能够指定我自己的reids配置文件

所以就想通过脚本的方式,进行启动reids。

第一种方式:修改 /etc/rc.d/rc.local 文件

1、新建Redis启动脚本

新建:reboot_auto_redis.sh和reboot_auto_redis.log文件,写入脚本内容

#!/bin/bash
cd /usr/local/redis/
/redis-server ./redis.conf &      

给脚本赋予执行权限:chmod 777 ./reboot_auto_redis.*

2、编辑/etc/rc.d/rc.local文件

在底部写入内容:

# redis开机自启脚本
/usr/local/redis/reboot_auto_redis.sh >/usr/local/redis/reboot_auto_redis.log 2>&1      
3、重启系统测试是否生效  

重启:reboot

查看日志文件,看到redis已经重启:cat /usr/local/redis/reboot_auto_redis.log

[root@zhixi ~]# cat /usr/local/redis/reboot_auto_redis.log 
1470:C 28 Oct 2022 16:23:19.636 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
1470:C 28 Oct 2022 16:23:19.636 # Redis version=5.0.4, bits=64, commit=00000000, modified=0, pid=1470, just started
1470:C 28 Oct 2022 16:23:19.636 # Configuration loaded
[root@zhixi ~]# ps -ef|grep redis|grep -v grep
root      1473     1  0 16:23 ?        00:00:00 ./redis-server *:6379      

第二种方式:Crontab

# crontab -e

写入以下内容:表示在执行reboot命令后,执行该脚本内容

@reboot /usr/local/redis/reboot_auto_redis.sh      

继续阅读