sudo的環境繼承

sudo默認情況下不繼承宿主用戶的環境變量,要設置sudo的環境變量,有以下幾種方式:

1,將需要運行的程序寫到腳本中,在腳本中設置環境變量,如下:

$cat run.sh
export PATH=/usr/local/bin:$PATH
nohup node app.js&
$sudo ./run.sh
2,給sudo設置別名,將環境繼承寫到命令行中,在.bashrc中添加:

alias sudo='sudo env PATH=$PATH NODE_PATH=$NODE_PATH'
$source .bashrc
$sudo node app.js&

3,修改sudoers配置,使它不要重置環境變量,註釋掉/etc/sudoers中的這一句:

Defaults    env_reset

4,直接修改要運行的程序的權限,使之有root權限,這樣不用sudo就可以獲得root的執行權限,比如打開80端口:

#chmod u+s /usr/local/bin/node
$node app.js

發佈了111 篇原創文章 · 獲贊 15 · 訪問量 60萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章