/etc/rc.local 与 /etc/profile


1.用户自己源码安装的软件组要自启动,可以在/etc/rc.local中配置,rc.loacl 是rc.d/rc.local的一个软连接。rc.local -> rc.d/rc.local

2. 用户的配置环境变量配置在/etc/profile下。

3.但是自启动rc.local先于/etc/profile被系统执行,有些软件找不到环境变量而无法执行。我们可以在rc.local中先调用/etc/profile,然后添加自己的自启动代码。

4.以tomcat为例, 首先在/etc/profile 中添加:

## ADD by icesongqiang for java jdk 16.12.28
JAVA_HOME=/usr/share/java; export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH; export PATH
CLASSPATH=$CLASSPATH:$JAVA_HOME/lib; export CLASSPATH

## ADD CATALINA_HOME for tomcat by icesonqiang 16.12.28
CATALINA_HOME=/usr/local/tomcat8;export CATALINA_HOME

## ADD by icesongqiang for maven 16.12.28
M2_HOME=/usr/local/apache-maven; export M2_HOME
PATH=$M2_HOME/bin:$PATH; export PATH

接着在/etc/rc.local中执行etc/profile, 并启动tomcat

## ADD by icesongqiang for java jdk 16.12.28
source etc/profile
## add tomcat
${CATALINA_HOME}/bin/startup.sh start

但是这样有一个弊端,就是用户没有登录也会看到环境变量中的值,而如果直接将/etc/profile中的环境变量语句拷贝到/etc/rc.loacl中,export语句会没有效果。也就是说执行了rc.local后,export的变量就无效了。

原文地址:http://blog.csdn.net/u011491972/article/details/53067445

原文地址:https://www.cnblogs.com/web21/p/6760395.html