今天一批服務器添加新用戶,配置sudo命令的使用的sudoers文件後,發現一臺服務器sudo後怎麼都不生效,怎麼sudo失效了呢?第一次遇到,現象以下:vim
$ sudo ifconfig服務器
sudo: ifconfig: command not foundide
$ sudo fdisk -l測試
sudo: fdisk: command not foundit
全部服務器配置一下,那個神奇啊,怎麼修改配置文件,而後重啓,普通用戶使用sudo都仍是無效。一陣子折騰,最後發現和環境變量有關係。解決以下:class
一、單個普通用戶時登錄
(1)普通用戶登陸後找到:.profile文件,注意小點兒哦 .變量
$ls -al配置
(2)編輯文件 .profilefile
$ vim .profile #添加以下內容:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
export PATH
(3)測試:$sudo ifconfig #顯示OK
二、若你係統多個普通用戶時
(1)使用root用戶
# vim /etc/profile # else後的PATH變量裏添加 :/sbin
if [ "`id -u`" -eq 0 ]; then
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
else
PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/sbin"
fi
export PATH
# source /etc/profile
(3)測試,如果遠程鏈接須要退出從新登陸
### 說明:加/sbin 是由於 ifconfig fdisk等命令都在這裏哦!