需求:在ssh服务器后,用户root 使用java会报错,没有这个变量,其实环境变量中已经有配置了,在/etc/profile 中有写变量及地址,通过source /etc/profile 命令也可以使环境变量加载上,但是ssh后不会展示变量,想在ssh后就有变量直接可以使用,这个需要加载到用户的变量里。
实现:用户变量有两个地方,一个地方是 .bash_profile 一个地方是 .bashrc 这两个地址都需要进行变量的添加。(这里的系统是centos7.9)
配置文件 ~/.bashrc 和 ~/.bash_profile 下添加Java的变量就好了
~]# cat ~/.bashrc
# .bashrc# User specific aliases and functionsalias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'# Source global definitions
if [ -f /etc/bashrc ]; then. /etc/bashrc
fi
export JAVA_HOME="/usr/local/jdk"
export PATH="${JAVA_HOME}/bin:$PATH"
验证登录后有变量
复用SSH连接(admin@10.10.xxx.50)[连接数量: 3]
Last login: Fri Jan 10 15:10:02 2025 from 10.10.xxx.29
[admin@data-visualization-010010xxx10-security ~]$ sudo bash
[root@data-visualization-010010xxxx10-security admin]# java -version
java version "1.8.0_271"
Java(TM) SE Runtime Environment (build 1.8.0_271-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.271-b09, mixed mode)
需求实现,登录后有了java变量,不用source命令生成变量了。