-bash: sudo: command not found的解決方法


在 Linux 系統中,使用 sudo 命令時提示 “command not found”,首先執行以下命令看一下 /etc/sudoers.d 文件是否存在,

find /etc/sudoers.d

1、如果返回 No such file or directory,就說明你的系統沒有安裝sudo,下面是安裝命令 :

apt-get install sudo

如果提示 E: Unable to locate package sudo 的錯誤,先執行下面的命令:

apt-get update

再執行 sudo apt-get install 就可以了。

2、如果 /etc/sudoers.d 文件存在則說明系統已經安裝了 sudo,只不過沒有配置環境。

當你使用 sudo 去執行一個程序時,處於安全的考慮,這個程序將在一個新的、最小化的環境中執行,也就是說,諸如PATH這樣的環境變量,在 sudo 命令下已經被重置成默認狀態了。所以當一個剛初始化的 PATH 變量中不包含你所要運行的程序所在的目錄,用 sudo 去執行,你就會得到 “command not found” 的錯誤提示。

要想改變 PATH 在 sudo 會話中的初始值,使用以下命令打開/etc/sudoers文件,

vi /etc/sudoers

找到"secure_path"一行,當你執行 sudo 命令時,"secure_path"中包含的路徑將被當做默認 PATH 變量使用。

按 “i” 鍵就可以進入插入模式(Insert mode),添加所需要的路徑(如 /usr/local/bin)到"secure_path"下,
Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin

編輯完成后,按 “ESC” 鍵切換為命令行模式,輸入 “: wq” 保存並退出。

解決!!!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM