首先的问题,linux启动并没有执行rc.local文件
根据linux机制,我们把启动命令要卸载/etc/rc.d/rc.local文件中,具体原因我不多讲,但是有可能会出现启动并没有执行这个文件的情况。
主要是权限不足。
暴力点 chmod -R 777 /etc/rc.d/rc.local
问题解决
但是依然没能解决命令启动的原因,通过打印日志判断原因
我们可以这样
touch /var/lock/subsys/local echo "hello linux" >>/var/log/error_log1 nginx >>/var/log/error_log2 echo "hello linux" >>/var/log/error_log3 /usr/local/tomcats/ebaby/bin/startup.sh >> /var/log/error_log4 /usr/local/tomcats/icontractor/bin/startup.sh >>/var/log/error_log5
这样我们就可以看出他们启动后打印的日志。
结果第三行nginx 打印出了空的日志。
但是我已经把nginx加入全局变量了,centos7 里面完全没有问题,现在是centos6。无奈。
尝试写入全路径的nginx /usr/local/nginx/sbin/nginx
成功了
再看其余的问题,启动tomcat的时候报错了,错误如下
Neither the JAVA_HOME nor the JRE_HOME environment variable is defined At least one of these environment variable is needed to run this program
应该是环境变量的事
网络查询解决如下
解决tomcat自启动的问题
从网上做到的教程链接 解决tomcat自启动环境变量的问题
按照教程上传完毕,但是依然出错了。
Cannot find /usr/local/tomcats/ebaby/bin/catalina.sh
因为我是下载到本地电脑修改,修改完又上传的,所以要改下权限。
又是一波暴力权限
chmod -R 777 catalina.sh
这次完美解决了跟随linux自动重启服务的功能
以后可以放心的轻松的重启服务器了。