在 Debian(或一般的 Linux)系统中,“env(环境变量)”可以在多个地方修改,具体取决于作用范围(当前用户 / 所有用户 / 某次会话 / 某个服务)。下面按常见场景给你一个清晰清单。
export VAR_NAME=value
~/.bashrc(交互式 shell)nano ~/.bashrc
末尾添加:
export PATH=$PATH:/your/path
export MY_VAR=value
生效:
source ~/.bashrc
~/.profile 或 ~/.bash_profilenano ~/.profile
/etc/environment⚠️ 不是 shell 脚本,不能用 export
sudo nano /etc/environment
示例:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin"
LANG="en_US.UTF-8"
修改后重新登录生效。
/etc/profile所有用户登录时执行
sudo nano /etc/profile
/etc/profile.d/*.sh推荐方式(干净、易管理)
sudo nano /etc/profile.d/myenv.sh
内容:
export MY_VAR=value
sudo systemctl edit your-service
写入:
[Service]
Environment="VAR=value"
Environment="PATH=/usr/bin:/opt/myapp"
systemctl --user edit your-service
env
printenv
echo $PATH
cron 不会读取 .bashrcsudo 默认不保留用户环境变量如果你能告诉我:
我可以直接给你最准确的一行配置。