由于root和非root用户的shell环境变量不同,所以,如果使用像ifconfig这样的特殊命令,需要在.bash_profile文件中加入PATH=$PATH:/sbin:/usr/sbin:/usr/local/sbin:/usr/kerberos/sbin。
另外,对于非root用户,即使加上了命令的环境变量,但对于像网卡这类只用root可以访问的设备仍然是无法使用的,例如service network restart等命令,解决这样问题的方法是:首先将非root用户加到sudo组中:
首需要切换到root身份
$su -
(注意有- ,这和su是不同的,在用命令"su"的时候只是切换到root,但没有把root的环境变量传过去,还是当前用户的环境变量,用"su -"命令将环境变量也一起带过去,就象和root登录一样)
然后
$visudo //切记,此处没有vi和sudo之间没有空格
1、移动光标,到最后一行
2、按a,进入append模式
3、输入
your_user_name ALL=(ALL) ALL
4、按Esc
5、输入“:w”(保存文件)
6、输入“:q”(退出)
这样就把自己加入了sudo组,可以使用sudo命令了。
加到sudo组后,就可以运行sudo service network restart等命令来解决无法使用的设备。