部署了一个新的tomcat到一个新的用户下,发下启动失败了

/home/personal/apache-tomcat/bin/catalina.sh: line 434: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86_64/jre/bin/java: No such file or directory

  这里日志说启动时找java虚拟机时没找到,去看了下,果然不对

[personal@ZJHZ-CMREAD-TEST126 /]$ cd usr/lib/jvm
[personal@ZJHZ-CMREAD-TEST126 jvm]$ ll
total 0
drwxr-xr-x 3 root root 16 Mar 17 08:46 java-1.7.0-openjdk-1.7.0.111-2.6.7.2.el7_2.x86_64

  换个好的环境看了下环境变量,JAVA_HOME是/usr/jdk1.8.0_102,接着去系统变量 etc/profile里看

JAVA_HOME=/usr/jdk1.8.0_102
JAVA_BIN=/usr/jdk1.8.0_102/bin
ANT_HOME=/home/cmreadwh/apache-ant-1.10.1
PATH=$JAVA_HOME/bin:$ANT_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

  很明显其他用户直接读取了系统配置的环境变量,那么我们来比较下两个用户之间环境变量配置的.bashrc文件内容的区别:

好的

# .bashrc

# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi # Uncomment the following line if you don't like systemctl's auto-paging feature:
# export SYSTEMD_PAGER= # User specific aliases and functions

有问题的

# .bashrc

# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi # Uncomment the following line if you don't like systemctl's auto-paging feature:
# export SYSTEMD_PAGER= # User specific aliases and functions source ~/apache-tomcat/cfg/cshrc

  最后一行覆盖了前面的环境变量设置,我们来看看apache-tomcat/cfg/cshrc就知道了

export JAVA_HOME="/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.102-4.b14.el7.x86_64"
export CATALINA_TMPDIR="/tmp"
export JAVA_BINDIR="${JAVA_HOME}/bin"
export JDK_HOME="${JAVA_HOME}"
export SDK_HOME="${JAVA_HOME}"
export PATH="${JAVA_HOME}/bin:${HOME}/bin:/usr/local/bin:/usr/bin:/usr/X11R6/bin:/bin:/usr/games:/opt/gnome/bin:/opt/kde3/bin:$PATH"
export JAVA_ROOT="${JAVA_HOME}"
export JRE_HOME="${JAVA_HOME}/jre"
export CATALINA_HOME="${HOME}/apache-tomcat"
export CLASSPATH=".:${JAVA_HOME}/lib/jt.jar:${JAVA_HOME}/lib/tools.jar:${JAVA_HOME}/jre/lib:${CATALINA_HOME}/webapps/ues/WEB-INF/classes" #setenv LC_ALL zh_CN.GBK alias cfg="cd ${CATALINA_HOME}/cfg"
alias webapps="cd ${CATALINA_HOME}/webapps"
alias class="cd ${CATALINA_HOME}/webapps/ROOT/WEB-INF/classes"
alias tlog="cd ${CATALINA_HOME}/logs"
alias logs="cd ${CATALINA_HOME}/logs"
alias local="cd ${CATALINA_HOME}/local"
alias catlog="tail -f ${CATALINA_HOME}/logs/catalina.out"
alias version="java Version"
alias start="${CATALINA_HOME}/cfg/iread.sh start"
alias stop="${CATALINA_HOME}/cfg/iread.sh stop"
alias restart="${CATALINA_HOME}/cfg/iread.sh restart"
alias status="${CATALINA_HOME}/cfg/iread.sh status"

  为了使用系统环境变量,只要把有问题的用户里.bashrc文件的最后一行注掉就可以了,切记为了使新环境变量生效需要重新source一下

source ~/.bashrc

Linux环境变量从用户配置改为系统配置的更多相关文章

  1. Linux中环境变量文件及配置

    Linux中环境变量文件及配置   一.环境变量文件介绍 转自:http://blog.csdn.net/cscmaker/article/details/7261921 Linux中环境变量包括系统 ...

  2. Linux中环境变量文件及配置(转载)

    一.环境变量文件介绍 转自:http://blog.csdn.net/cscmaker/article/details/7261921 Linux中环境变量包括系统级和用户级,系统级的环境变量是每个登 ...

  3. Linux环境变量配置全攻略

    Linux环境变量配置 在自定义安装软件的时候,经常需要配置环境变量,下面列举出各种对环境变量的配置方法. 下面所有例子的环境说明如下: 系统:Ubuntu 14.0 用户名:uusama 需要配置M ...

  4. Linux环境变量配置方法

    Linux上环境变量配置分为设置永久变量和临时变量两种.环境变量设置方法同时要考虑环境Shell类型,不同类型的SHELL设置临时变量方法和设置永久变量对应的配置文件不同.Linux环境变量本身配置过 ...

  5. Linux 环境变量配置(Nodejs/MongoDB/JDK/Nginx)

    一.环境变量配置 注:配置环境变量的文件 全局变量(系统级别): /etc/bashrc /etc/profile /etc/environment 用户变量(用户级别): ~/.bash_profi ...

  6. linux 环境变量配置方式

    linux 环境变量可以在多个文件中配置 说明: linux bash 运行模式分为两种: login shell 和non-login shell, 两种登录模式启动是加载的配置文件不一样. 1. ...

  7. Linux 环境变量配置的 6 种方法,建议收藏

    关注「开源Linux」,选择"设为星标" 回复「学习」,有我为您特别筛选的学习资料~ Linux环境变量配置 在自定义安装软件的时候,经常需要配置环境变量,下面列举出各种对环境变量 ...

  8. 超详干货!Linux 环境变量配置全攻略

    点击上方"开源Linux",选择"设为星标" 回复"学习"获取独家整理的学习资料! Linux环境变量配置 在自定义安装软件的时候,经常需要 ...

  9. 三种配置linux环境变量的方法(以java为例)

    1.先确认是否为openjdk:参考 2. 修改/etc/profile文件  如果你的计算机仅仅作为开发使用时推荐使用这种方法,因为所有用户的shell都有权使用这些环境变量,可能会给系统带来安全性 ...

随机推荐

  1. HDU 1263 二维map

    题意:给出一份水果的交易表,根据地区统计出水果的交易情况.   思路:二维map使用.   #include<cstdio> #include<string> #include ...

  2. Asp.net Core, 基于 claims 实现权限验证 - 引导篇

    什么是Claims? 这个直接阅读其他大神些的文章吧,解释得更好. 相关文章阅读: http://www.cnblogs.com/JustRun1983/p/4708176.html http://w ...

  3. Valid Number,判断是否为合法数字

    问题描述: Validate if a given string is numeric. Some examples:"0" => true" 0.1 " ...

  4. thinkphp5新特性

    1.惰性加载(需要什么就加载什么,不需要什么就不加载),显著提高了应用性能: 2.支持composer: 3.遵守PSR-2.PSR-4规范: 4.支持单元测试: 5.安全机制,详细的日志能帮你轻轻松 ...

  5. Kubernetes 在知乎上的应用

    从 Mesos 到 Kubernetes 之前的调度框架是基于 Mesos 自研的.采用的语言是 Python.运行了大概两年多的时间了,也一直比较稳定.但随着业务的增长,现有的框架的问题逐渐暴露. ...

  6. js 小复习2

    1.数组 findIndex()  indexOf() // findIndex()方法返回数组中满足提供的测试函数的第一个元素的索引.否则返回-1. function isBigEnough(ele ...

  7. php超级全局变量和魔术变量

    php超级全局变量和魔术变量 一.总结 一句话总结: 1.两者的书写形式非常不一样,超级全局变量是$_大写变量名 的形式,魔术变量是 __大写变量名的形式__ 2.两者的应用范围不一样,超级全局变量是 ...

  8. 布置weblogic10 64位系统

    1.下载64位JDK并安装 2.java -D64 -jar wls1036_generic.jar(注意下载下来的wls1036_generic.jar文件不要解压,用此命令解压) 3.点击下一步, ...

  9. Codeforces Round #220 (Div. 2)

    链接 毒瘤场..... A题:,真码农题,直接干爆,枚举,注意越界问题,wa37的看这组数据1 10 1 5 2 2,应该是no //#pragma comment(linker, "/st ...

  10. 三十四 Python分布式爬虫打造搜索引擎Scrapy精讲—scrapy信号详解

    信号一般使用信号分发器dispatcher.connect(),来设置信号,和信号触发函数,当捕获到信号时执行一个函数 dispatcher.connect()信号分发器,第一个参数信号触发函数,第二 ...