在 CentOS 里修改“环境变量(env)”要看作用范围和使用场景。下面按常见情况给你一个完整说明(适用于 CentOS 7 / 8 / Stream)。
编辑用户主目录下的配置文件:
vi ~/.bashrc
或
vi ~/.bash_profile
一般推荐用 ~/.bashrc
export JAVA_HOME=/usr/local/java
export PATH=$JAVA_HOME/bin:$PATH
source ~/.bashrc
✅ 只对当前用户生效
sudo vi /etc/profile
或(更推荐,分离性好)
sudo vi /etc/profile.d/myenv.sh
export GOROOT=/usr/local/go
export PATH=$GOROOT/bin:$PATH
赋予执行权限:
sudo chmod +x /etc/profile.d/myenv.sh
然后:
source /etc/profile
✅ 对所有用户生效
export PATH=/opt/app/bin:$PATH
⚠️ 关闭终端后失效
sudo vi /etc/environment
特点:
exportKEY=VALUE示例:
JAVA_HOME=/usr/local/java
如果是 systemd 启动的服务:
sudo vi /etc/systemd/system/myapp.service
[Service]
Environment="JAVA_HOME=/usr/local/java"
Environment="PATH=/usr/local/java/bin:/usr/bin:/bin"
sudo systemctl daemon-reload
sudo systemctl restart myapp
env
或
printenv
查看某个变量:
echo $JAVA_HOME
| 场景 | 推荐文件 |
|---|---|
| 当前用户 | ~/.bashrc |
| 所有用户 | /etc/profile.d/*.sh |
| 临时测试 | export |
| 服务 | systemd unit |
如果你能说明具体用途(比如 Java / Python / Docker / systemd / 容器),我可以给你最精准的修改方式。