sudo如何保持當前使用者的環境變數?

2022-02-19 01:44:10 字數 668 閱讀 1616

現象,我在/etc/profile裡設定全域性**,然後使用命令

1、curl   走**

2、sudo curl 並沒有走**

使用env和sudo env檢視環境變數,發現**設定只存在於env裡,sudo env裡並沒有**的資訊

那麼如何使用sudo的時候,把環境變數也帶進去呢?

方法一、

/etc/sudoers中新增以下內容作用相同:

defaults !env_reset
方法二、

可以把需要傳遞環境變數的命令設定到env_keep

defaults env_keep += "ftp_proxy http_proxy https_proxy no_proxy"
可以看到sudo pip和pip環境變數是不同的

當前使用者的命令別名不會應用到sudo。如果需要這樣,只需在~/.bashrc或者/etc/bash.bashrc中加入:

alias sudo='sudo '
參考:

1、2、簡體中文%29

3、

sudo命令保持環境變數

如果你裝了多個版本的python,比如 anaconda下的python3.5,原生自帶python2.7,那麼你在anaconda環境下執行sudo python和python所使用的python版本是不同的。sudo在切換成root使用者的時候,env並不會去保留這些環境變數,需要特別的指明才可...

如何執行sudo命令時保留當前使用者env變數

在linux環境中我們經常使用sudo命令執行root許可權,但預設情況下sudo執行時,會預設重置環境變數為安全的環境變數,也即,但前設定的變數都會失效。可以通過如下設定來取消這種設定 1 編輯sudoers檔案 vim etc sudoers 注釋掉 defaults env reset def...

如何執行sudo命令時保留當前使用者env變數

在linux環境中我們經常使用sudo命令執行root許可權,但預設情況下sudo執行時,會預設重置環境變數為安全的環境變數,也即,但前設定的變數都會失效。可以通過如下設定來取消這種設定 1 編輯sudoers檔案 vim etc sudoers 注釋掉 defaults env reset def...