rc.d/rc.local 自动启 tomcat 启不来
针对自己配置的JDK环境有可能会出现这样的情况。
tomcat能启来。但自启动就不行,原因 JDK是后安装的,环境变量配置在 /etc/profile 里面。

tomcat 配了自启动。但reboot后tomcat没有启来。分析思路
A.rc.d/rc.local有没有执行权限,如果有。
B.看里面的命令有没有被执行。
可以用>>将内容重定向到文件中,查看文件来看执行结果。(类似我们程序中通过日志排查问题)。
图中可以看出 /tmp/rcd.log 里面,红字1 是记录下来了。
执行红字2的时候,报 JAVA_HOME 环境变量找不到,
但输入java -version又能看到 JDK是1.8,而且直接运行tomcat8080/bin/startup.sh是可以启动的。
分析下来只有一种可能性。当linux系统开始跑rc.d/rc.local里面脚本的时候,JAVA_HOME还没有生成。
【解决方案】
写一个tomcat.sh 脚本,里面导入一下JDK的环境变量,再执行start.sh,最后这个 tomcat.sh 配置到rc.local中。


tomcat.sh 内容如下
#!/bin/sh
# ##################################################################
# Powered by Iron Info ChenJun
# ##################################################################
# Tomcat Startup export JAVA_HOME=/usr/local/iron/jdk1.8.0_151
export JRE_HOME=$JAVA_HOME/jre
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=./:$JAVA_HOME/lib:$JAVA_HOME/jre/lib /usr/local/iron/tomcat8080/bin/startup.sh >> /tmp/tomcat.log
/usr/local/iron/tomcat8081/bin/startup.sh >> /tmp/tomcat.log
/usr/local/iron/tomcat8082/bin/startup.sh >> /tmp/tomcat.log
rc.d/rc.local 自动启 tomcat 启不来的更多相关文章
- /etc/rc.d/rc.local linux启动自动开启某些服务(转)
/etc/rc.d/rc.local似乎是很多Linux系统管理员的偏爱,因为凡是需要随系统自动启动的服务.程序等,只要系统没有提供Sys V风格的启动脚本,就把这些需求都塞到/etc/rc.d/rc ...
- 【总结】/etc/rc.d/rc.local 与 /etc/profile .bash_profile .bashrc 文件执行顺序
登陆shell与交互式非登陆shell的区别 登录shell 所谓登录shell,指的是当用户登录系统时所取的那个 shell.登录shell属于交互式shell. 登录shell将查找4个不同的启动 ...
- 应用shell脚本停启Tomcat
最近在工作中频繁的操作多个tomcat,顺便就简单研究了一下 一. 简介 Shell 是一种与操作系统直接交互的程序,Unix系统中叫Bourne Shell,包括以下几种 Sh—Bourne She ...
- Failed to start /etc/rc.d/rc.local Compatibility
查看/var/log/message Jun :: root systemd: Started Network Manager. Jun :: root systemd: Starting LSB: ...
- Linux系统中/etc/rc.local和/etc/rc.d/rc.local的区别
/etc/rc.d/rc.local 用于添加开机启动命令 /etc/rc.local是/etc/rc.d/rc.local的软连接
- /etc/rc.d/rc.local 自定义开机启动程序
/etc/rc.d/rc.local 用于用户自定义开机启动程序,可以往里写开机要执行的命令或脚本,线上的配置如下: [root@localhost ~]$ cat /etc/rc.d/rc.loca ...
- /etc/rc.d/rc.local
/etc/rc.d/rc.local 用于用户自定义开机启动程序,可以往里写开机要执行的命令或脚本,线上的配置如下: [root@localhost ~]$ cat /etc/rc.d/rc.loca ...
- centos7 /etc/rc.local需要chmod +x /etc/rc.d/rc.local
Centos 7.0设置/etc/rc.local无效问题解决 安装centos7以后按照以往习惯修改rc.local添加开机启动命令,但重启后发现无效,再次重启发现依然如故 检查系统rc.local ...
- A start job is running for /etc/rc.d/rc.local ... ... no limit
/etc/rc.d/rc.local文件中配置了redis随机启动但是没有设置redis启动为守护进程(daemonize yes)导致redis启动后阻塞
随机推荐
- Linux学习之文件属性chattr权限与sudo权限(十二)
Linux学习之文件属性chattr权限与sudo权限 文件属性chattr Linux文件的隐藏属性在保护系统文件的安全性上非常重要,是防止误操作的,对root用户也同样有效.chattr命令只能在 ...
- pandas学习(常用数学统计方法总结、读取或保存数据、缺省值和异常值处理)
pandas学习(常用数学统计方法总结.读取或保存数据.缺省值和异常值处理) 目录 常用数学统计方法总结 读取或保存数据 缺省值和异常值处理 常用数学统计方法总结 count 计算非NA值的数量 de ...
- 003.HAProxy ACL规则的智能负载均衡
一 简介 HAProxy可以工作在第七层模型,可通过ACL规则实现基于HAProxy的智能负载均衡系统,HAProxy通过ACL规则完成以下两种主要功能: 通过ACL规则检查客户端请求是否合法,如果符 ...
- 自己总结的C#编码规范--前言&目录
最近在为公司编写c#编码规范,以前对这方面研究不多,只是觉得代码能够出自己的意思就可以了. 我参考了以下资料 C# Coding Conventions NET设计规范约定惯用法与模式(第2版) 编写 ...
- 28BYJ-48步进电机
28BYJ-48步进电机:1.步进电机是一种将电脉冲转化为角位移的执行机构. 2.通俗一点讲:当步进驱动器接收到 一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角). 3.通过控 ...
- java.net.SocketException四大异常解决方案
java.net.SocketException如何才能更好的使用呢?这个就需要我们先要了解有关这个语言的相关问题.希望大家有所帮助.那么我们就来看看有关java.net.SocketExceptio ...
- C#高级编程9 第16章 错误和异常
C#高级编程9 第16章 错误和异常 了解这章可以学会如何处理系统异常以及错误信息. System.Exception类是.NET运行库抛出的异常,可以继承它定义自己的异常类. try块代码包含的代码 ...
- java内部类(三)
内部类之方法内部类 方法内部类就是内部类定义在外部类方法中,方法内部类只在该方法内部可见,即只在该方法内部使用. 注意:由于方法内部类不能在外部类的方法以外的地方使用,因此方法内部类不能使用访问控制符 ...
- C#利用QRCoder生产二维码
系统使用.NET4.5.1 代码如下: using System; using System.Collections.Generic; using System.Linq; using System. ...
- Android APK反编译详解(附图) (转)
这段时间在学Android应用开发,在想既然是用Java开发的应该很好反编译从而得到源代码吧,google了一下,确实很简单,以下是我的实践过程. 在此郑重声明,贴出来的目的不是为了去破解人家的软件, ...