臨時設置環境變量無需修改配置文件,僅對當前終端會話生效,關閉終端后失效。常用命令如下:
export PATH=$PATH:/custom/path
(將/custom/path
替換為實際路徑)。export MY_VAR=value
(MY_VAR
為變量名,value
為變量值)。export PATH=$PATH:/home/user/scripts
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
驗證:通過echo $PATH
查看當前PATH是否包含新路徑,或echo $MY_VAR
查看變量值。
用戶級環境變量對當前用戶的所有終端會話生效,需修改用戶主目錄下的配置文件。
~/.bashrc
文件(推薦,適用于Bash用戶)~/.bashrc
會在每次打開新的終端窗口時自動加載,適合需要頻繁使用的變量。
nano ~/.bashrc
(或使用vim
、gedit
等編輯器)。export PATH=$PATH:/custom/path
(添加自定義路徑)或export MY_VAR=value
(設置其他變量)。Ctrl+O
→Enter
→Ctrl+X
)。source ~/.bashrc
(或. ~/.bashrc
)。~/.profile
文件(適用于登錄Shell)~/.profile
會在用戶登錄時加載(如SSH登錄、圖形界面登錄),適合需要登錄時生效的變量。
nano ~/.profile
。~/.bashrc
相同的變量設置。source ~/.profile
使更改生效。注意:若~/.bash_profile
存在,它可能會覆蓋~/.profile
的設置,建議優先使用~/.bashrc
。
全局環境變量對系統中所有用戶生效,需修改系統級配置文件。
/etc/environment
文件(推薦,簡單直觀)/etc/environment
是系統全局環境變量的配置文件,采用KEY=value
的鍵值對格式,支持多變量定義。
sudo nano /etc/environment
。PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/custom/path"
MY_VAR="global_value"
(注意:PATH變量需保留系統原有路徑,用冒號:
分隔新增路徑)。/etc/profile
或/etc/profile.d/
目錄下的腳本(適用于所有Shell)修改/etc/profile
:
sudo nano /etc/profile
。export
命令(如export PATH=$PATH:/custom/path
)。source /etc/profile
使更改生效(對當前終端立即生效)。創建/etc/profile.d/
下的腳本(更規范):
sudo nano /etc/profile.d/custom_env.sh
。export PATH=$PATH:/custom/path
。source /etc/profile.d/custom_env.sh
使更改生效(對當前終端立即生效)。/etc/profile.d/
下的腳本)。若需要為某個Systemd服務(如Nginx、MySQL)設置環境變量,可通過修改服務單元文件實現。
sudo nano /etc/systemd/system/service_name.service
(如nginx.service
)。[Service]
部分添加Environment
指令,例如:[Service]
Environment="PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/custom/path"
Environment="MY_VAR=service_value"
sudo systemctl daemon-reload
。sudo systemctl restart service_name
(如sudo systemctl restart nginx
)。驗證:通過systemctl show service_name --property=Environment
查看服務的環境變量設置。
無論使用哪種方法設置環境變量,均可通過以下命令驗證:
echo $PATH
(檢查自定義路徑是否包含在內)。echo $MY_VAR
(替換為實際變量名)。systemctl show service_name --property=Environment
。ls /custom/path
),避免無效路徑導致命令無法執行。/etc/environment
、/etc/profile
)需使用sudo
提升權限,避免權限不足導致修改失敗。~/.bashrc
、~/.profile
等文件中的變量設置需以export
開頭(如export PATH=$PATH:/custom/path
),避免遺漏export
導致變量無法導出。~/.bashrc
、~/.profile
):修改后運行source
命令立即生效,或重新登錄終端。/etc/environment
、/etc/profile
):修改后需重新登錄或重啟系統生效。