在 CentOS 中,永久设置环境变量(env)通常有几种方式,取决于你希望环境变量对哪个用户或哪种场景生效。
编辑用户家目录下的配置文件:
vi ~/.bash_profile
# 或
vi ~/.bashrc
在文件末尾添加,例如:
export JAVA_HOME=/usr/local/java
export PATH=$JAVA_HOME/bin:$PATH
保存后使其立即生效:
source ~/.bash_profile
✅ 登录该用户后永久有效
✅ 只影响当前用户
编辑系统环境变量文件:
vi /etc/profile
在末尾添加:
export MY_ENV=value
export PATH=$PATH:/opt/app/bin
立即生效:
source /etc/profile
✅ 所有用户登录后生效
⚠ 需要 root 权限
/etc/profile.d/(推荐系统级方式)CentOS 推荐把环境变量放在这里:
vi /etc/profile.d/myenv.sh
内容:
#!/bin/bash
export APP_HOME=/opt/app
export PATH=$APP_HOME/bin:$PATH
赋予执行权限:
chmod +x /etc/profile.d/myenv.sh
✅ 结构清晰
✅ 易于管理
编辑:
vi ~/.bashrc
添加 export 语句,适合:
echo $JAVA_HOME
env | grep JAVA
❌ 只在终端里 export → 重启失效
❌ 写在 /etc/environment(CentOS 默认不读取)
❌ 混淆 .bash_profile 和 .bashrc
如果你能说明:
我可以给你最合适的具体配置示例。