添加开机自启脚本
方法一不管用
在centos7中增加脚本有两种常用的方法,以脚本autostart.sh为例:
#!/bin/bash
# chkconfig: 2345 10 90
# description: myservice ....
#description:开机自启脚本
redis-server /etc/redis.conf & #启动redis
其中2345是默认启动级别,级别有0-6共7个级别。
等级0表示:表示关机
等级1表示:单用户模式
等级2表示:无网络连接的多用户命令行模式
等级3表示:有网络连接的多用户命令行模式
等级4表示:不可用
等级5表示:带图形界面的多用户模式
等级6表示:重新启动
10是启动优先级,90是停止优先级,优先级范围是0-100,数字越大,优先级越低。
方法一:
1、赋予脚本可执行权限(/opt/autostart.sh是你的脚本路径)
chmod +x /opt/autostart.sh
2、打开/etc/rc.d/rc.local或/etc/rc.local文件,在末尾增加如下内容
/opt/autostart.sh
3、在centos7中,/etc/rc.d/rc.local的权限被降低了,所以需要执行如下命令赋予其可执行权限
chmod +x /etc/rc.d/rc.local
错误:
$'\r': command not found
答案:
win下的换行是回车符+换行符
\r\n
linux下换行符\n
linux不识别\r
vim /opt/autostart.sh 去掉空行
错误:
bad interpreter: No such file or directory
解决:
1、编辑出错文件
vi filename
2、查看该格式(报错文件格式是DOS)
:set ff
3、修改格式
:set ff=unix
4、保存退出
:wq!
方法二
1、将脚本移动到/etc/rc.d/init.d目录下
mv /opt/autostart.sh /etc/rc.d/init.d
2、增加脚本的可执行权限
chmod +x /etc/rc.d/init.d/autostart.sh
3、添加脚本到开机自动启动项目中
cd /etc/rc.d/init.d
chkconfig --add autostart.sh
chkconfig autostart.sh on