centos7 系统设置开机自启要么写在/etc/rc.d/rc.local 下,或者写入service服务。但是rc.local 也是由systemctl控制服务的,首先需要看下rc-local.service 是否开启。
#需要执行的脚本:这里有个坑,如果执行的是java程序,如果压缩包装的jdk环境,全局环境在这里是不生效的。需要在脚本里面再次声明变量,这个子shell没继承他老爸。
cat /home/sh/test.sh #声明jdk变量环境 export JAVA_HOME=/home/service/jdk export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$PATH:$JAVA_HOME/bin #执行程序 nohup java -jar /home/jar/test.jar > /dev/null 2>&1 & #给脚本加执行权限 chmod +x /home/sh/test.sh
#写入rc-local文件中
#启动rc-local.service服务 systemctl start rc-local.service #赋予执行权限 chmod +x /etc/rc.d/rc.local #写入启动文件中,如果传参的脚本也可以在后面带参数。 /home/sh/test.sh