在 CentOS 中,env(环境变量)的配置位置取决于作用范围和使用场景。下面按常见情况给你梳理一下:
/etc/profilesudo vi /etc/profile
添加:
export JAVA_HOME=/usr/java/jdk1.8.0_291
export PATH=$JAVA_HOME/bin:$PATH
生效:
source /etc/profile
/etc/profile.d/*.sh/etc/profile 更规范).sh 文件sudo vi /etc/profile.d/myenv.sh
内容:
export MY_VAR=test
/etc/environmentKEY=VALUE$PATH 变量拼接)sudo vi /etc/environment
PATH="/usr/local/bin:/usr/bin:/bin"
~/.bash_profile 或 ~/.bashrc~/.bash_profile(登录 shell)~/.bashrcvi ~/.bash_profile
export PATH=$PATH:/home/user/bin
生效:
source ~/.bash_profile
export VAR_NAME=value
关闭终端后失效。
如果你是为 systemd 服务配置环境变量:
[Service]
Environment=ENV_NAME=value
或:
EnvironmentFile=/etc/sysconfig/myservice
/etc/sysconfig/sudo vi /etc/sysconfig/myservice
PORT=8080
env
echo $PATH
| 范围 | 文件 |
|---|---|
| 所有用户 | /etc/profile / /etc/profile.d/*.sh |
| 所有用户(简单) | /etc/environment |
| 当前用户 | ~/.bash_profile / ~/.bashrc |
| systemd 服务 | /etc/sysconfig/* 或 service 文件 |
如果你能说下具体给谁配、配什么变量(如 Java / PATH / 服务),我可以给你更精确的配置示例。