今天一批服务器添加新用户,配置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等命令都在这里哦!