2011-12-18 108 views
1

我添加了PATH s到~/.bashrc/root/.bashrc,但是sudo adb仍然報告「command not found」?我添加了PATH到〜/ .bashrc和/root/.bashrc,但「sudo adb」仍然報告「找不到命令」?

我也重新啓動了。

所以我需要一種方法來獲得sudo.bashrc與我的用戶的.bashrc同步?

的路徑是,我可以從我的用戶的身份運行,只是沒有sudo的權利:

PATH=~/android-sdks/tools:$PATH 
PATH=~/android-sdks/platform-tools:$PATH 
+1

在adb上檢查+ x權限。做'哪個adb'來看看它是否/它在哪裏找到它 – sehe 2011-12-18 02:12:39

+1

我建議在'PATH'變量中嘗試_full complete paths_;我只是不相信'〜'擴展100%的時間。 – sarnold 2011-12-18 02:14:35

+0

沒有任何骰子 – paIncrease 2011-12-18 02:20:59

回答

0

好吧我剛剛修改腳本以sudo〜/ android-sdks/platform-tools/adb替換sudo adb的每一個出現就足夠好了

1

哦,我知道了:

sudo -E adb 

人須藤:

-E   The -E (preserve environment) option will override the env_reset option in 
       sudoers(5)). It is only available when either the matching command has the SETENV 
       tag or the setenv option is set in sudoers(5). 
+0

hm,沒有骰子.... – paIncrease 2011-12-18 02:19:32

+0

由於在sudoers文件中設置了secure_path,所以很可能無法工作。它應該適用於其他環境變量,而不是PATH。 – Nicholi 2012-12-12 03:33:11

0

首先確保在修改PATH後在你的bashrc中有一個export PATH

PATH=$PATH:/path/to/userfoo/dir/android-sdks/platform-tools:/path/to/userfoo/android-sdks/tools 
export PATH 

嘗試須藤經過以上設置後,看看你走多遠。如果沒有骰子然後:

它可能很好,你已經在你的顫抖文件中設置secure_path,這可能會痙攣你的風格;瞭解更多詳情:

man 5 sudoers 

確保在你的/ etc /你的用戶的sudoers你有SETENV選項設置:例如:

userfoo ALL=(ALL) SETENV: ALL 

給它一個去...

+0

謝謝你們兩個,是否將userfoo ALL =(ALL)SETENV:ALL放在頂部或底部很重要?編輯nvmd嘗試頂部和底部都沒有工作。 – paIncrease 2011-12-18 02:51:41

相關問題