*** is not in the sudoers file 问题解决
2012-11-16 01:47
489 查看
CentOS6.3 Final(RedHat系)下普通用户登录。执行sudo ***、会出现:【***(用户名)
is not in the sudoers file. This incident will be reported.】
解决方法:
啰嗦一句、shell下$开头表示普通用户。#开头表示root用户
1.
$whereis sudoers (找出文件所在的位置,默认都是/etc/sudoers)
2.
$su (回车、按照提示输入root密码。切换到root用户)
3.
#vi /etc/sudoers (编辑文件)
在root ALL=(ALL)ALL行下添加XXX ALL=(ALL)ALL,XXX为你的用户名。添加方法:找到root行,按下”i“键进入编辑模式添加即可!编辑好后esc键进入一般模式,“:wq"保存退出!(由于sudoers文件是只读文件。所以保存时可能保存不了、需要加上“!”、即“:wq!”强制保存并退出)
扩展:
在Ubuntu(Debian系)中由于禁用了root用户,默认情况下会把安装系统时建立的用户添加到sudoers中。但在CentOS(RedHat系)中并没有把任何root用户之外的用户默认的添加到sudoers之中。这样我们在执行sudo 命令时就会出现xxx is not in the sudoers file. This incident will be reported.这样的错误输出。现在为了安全起见比较提倡使用普通用户做日常操作,而在需要超级用户的时候使用sudo 来做,这样,我们就有必要把一些用户添加到sudoers之中。
其实把用户添加到sudoers之中很简单。
首先利用whereis 命令查找sudoers配置文件的目录(默认会在/etc/sudoers)
[root@localhost O0O]# whereis sudoers
sudoers: /etc/sudoers /etc/sudoers.bak /usr/share/man/man5/sudoers.5.gz
然后需要切换到root用户,更改/etc/sudoers的权限
[root@localhost O0O]# chmod u+w /etc/sudoers
然后就可以利用vi编辑器来把用户添加到sudoers之中
[root@localhost O0O]# vi /etc/sudoers
然后找到root ALL=(ALL) ALL所在的位置,把所要添加的用户添加到文件之中,
顺便提一下vi编辑器的用法。刚进入vi编辑器的时候牌命令行模式,这时可以通过方向键来移动光标,找到要编辑的位置之后按下“i”,然后就进入了插入模式,这时候你可以输入或删除字符。编辑完成之后按“esc”键退出插入模式,进入命令行模式,这时候按“:”可以进入末行模式,输入“wq”保存并退出。输入“q!”取消修改强制退出。
下面是添加完的结果。
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
O0O ALL=(ALL) ALL (这一行是添加的内容,O0O是我的用户名)
然后需要把sudoers 的写权限去掉
(否则系统不允许执行suoders文件sudo: /etc/sudoers is mode xxx, should be 0440 sudo: no valid sudoers sources found, quitting):
[root@localhost O0O]# chmod u-w /etc/sudoers
至此,在退出root用户之后就可以利用sudo命令来执行超级用户的权限了。
如果不幸发生错误(sudo: /etc/sudoers is mode xxx, should be 0440 sudo: no valid sudoers sources found, quitting)
解决方案:
重启系统
1,启动后按e键:
root (hd0,2)
kernel /vmlinuz-2.6.9-1.667 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
initrd /initrd-2.6.9-1.667.img
2,选择“kernel /vmlinuz-2.6.9-1.667 ro root=/dev/VolGroup00/LogVol00 rhgb quiet”命令行
3,按e键:
grub edit>kernel /vmlinuz-2.6.9-1.667 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
修改成:
grub edit>kernel /vmlinuz-2.6.9-1.667 1
ro root=/dev/VolGroup00/LogVol00 rhgb quiet
按ENTER键完成修改。就是加个“1”。
4,按b键booting进入Linux单用户模式
输入# chmod u-w /etc/sudoers(或chmod 0440 /etc/sudoers)
顺便提一下。如果root密码忘记。则在单用户模式下
输入# passwd root 输入root密码两次,reboot(shutdown -r now)即可。
is not in the sudoers file. This incident will be reported.】
解决方法:
啰嗦一句、shell下$开头表示普通用户。#开头表示root用户
1.
$whereis sudoers (找出文件所在的位置,默认都是/etc/sudoers)
2.
$su (回车、按照提示输入root密码。切换到root用户)
3.
#vi /etc/sudoers (编辑文件)
在root ALL=(ALL)ALL行下添加XXX ALL=(ALL)ALL,XXX为你的用户名。添加方法:找到root行,按下”i“键进入编辑模式添加即可!编辑好后esc键进入一般模式,“:wq"保存退出!(由于sudoers文件是只读文件。所以保存时可能保存不了、需要加上“!”、即“:wq!”强制保存并退出)
扩展:
在Ubuntu(Debian系)中由于禁用了root用户,默认情况下会把安装系统时建立的用户添加到sudoers中。但在CentOS(RedHat系)中并没有把任何root用户之外的用户默认的添加到sudoers之中。这样我们在执行sudo 命令时就会出现xxx is not in the sudoers file. This incident will be reported.这样的错误输出。现在为了安全起见比较提倡使用普通用户做日常操作,而在需要超级用户的时候使用sudo 来做,这样,我们就有必要把一些用户添加到sudoers之中。
其实把用户添加到sudoers之中很简单。
首先利用whereis 命令查找sudoers配置文件的目录(默认会在/etc/sudoers)
[root@localhost O0O]# whereis sudoers
sudoers: /etc/sudoers /etc/sudoers.bak /usr/share/man/man5/sudoers.5.gz
然后需要切换到root用户,更改/etc/sudoers的权限
[root@localhost O0O]# chmod u+w /etc/sudoers
然后就可以利用vi编辑器来把用户添加到sudoers之中
[root@localhost O0O]# vi /etc/sudoers
然后找到root ALL=(ALL) ALL所在的位置,把所要添加的用户添加到文件之中,
顺便提一下vi编辑器的用法。刚进入vi编辑器的时候牌命令行模式,这时可以通过方向键来移动光标,找到要编辑的位置之后按下“i”,然后就进入了插入模式,这时候你可以输入或删除字符。编辑完成之后按“esc”键退出插入模式,进入命令行模式,这时候按“:”可以进入末行模式,输入“wq”保存并退出。输入“q!”取消修改强制退出。
下面是添加完的结果。
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
O0O ALL=(ALL) ALL (这一行是添加的内容,O0O是我的用户名)
然后需要把sudoers 的写权限去掉
(否则系统不允许执行suoders文件sudo: /etc/sudoers is mode xxx, should be 0440 sudo: no valid sudoers sources found, quitting):
[root@localhost O0O]# chmod u-w /etc/sudoers
至此,在退出root用户之后就可以利用sudo命令来执行超级用户的权限了。
如果不幸发生错误(sudo: /etc/sudoers is mode xxx, should be 0440 sudo: no valid sudoers sources found, quitting)
解决方案:
重启系统
1,启动后按e键:
root (hd0,2)
kernel /vmlinuz-2.6.9-1.667 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
initrd /initrd-2.6.9-1.667.img
2,选择“kernel /vmlinuz-2.6.9-1.667 ro root=/dev/VolGroup00/LogVol00 rhgb quiet”命令行
3,按e键:
grub edit>kernel /vmlinuz-2.6.9-1.667 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
修改成:
grub edit>kernel /vmlinuz-2.6.9-1.667 1
ro root=/dev/VolGroup00/LogVol00 rhgb quiet
按ENTER键完成修改。就是加个“1”。
4,按b键booting进入Linux单用户模式
输入# chmod u-w /etc/sudoers(或chmod 0440 /etc/sudoers)
顺便提一下。如果root密码忘记。则在单用户模式下
输入# passwd root 输入root密码两次,reboot(shutdown -r now)即可。
相关文章推荐
- Ubuntu下is not in the sudoers file 问题解决
- xx is not in the sudoers file 问题解决
- xx is not in the sudoers file 问题解决【转载】
- 解决is not in the sudoers file问题
- Linux配置之解决CentOS中:xx is not in the sudoers file的问题
- % is not in the sudoers file 问题解决:非root用户使用sudo报错
- xx is not in the sudoers file 问题解决
- 【转】如何在fedora等Linux系统下解决(** is not in the sudoers file)的问题
- xx is not in the sudoers file 问题解决
- xx is not in the sudoers file 问题解决【转载】
- xx is not in the sudoers file 问题解决
- xx is not in the sudoers file 问题解决【转载】
- xx is not in the sudoers file 问题解决【转载】
- xx is not in the sudoers file 问题的解决
- xx is not in the sudoers file 问题解决
- xx is not in the sudoers file 问题解决【转载】
- 解决"eker is not in the sudoers file"问题
- xx is not in the sudoers file 问题解决
- centos username is not in the sudoers file 问题解决方法
- xx is not in the sudoers file 问题解决