红联Linux门户
Linux帮助

Fedora 23下解决用户不在sudoers文件中的方法

发布时间:2016-07-09 21:14:39来源:linux网站作者:列文
当用户在命令行键入sudo命令时可能会出现如下的报错信息:
xxx is not in the sudoers file. This incident will be reported​
 
下面将介绍笔者所采用的解决方法:
1.进入root模式。即在命令行输入“su -”(双引号里面的为输入内容,下同),然后根据提示输入root密码,注:在输入密码时你可能注意到命令行中的光标不会动,这是linux下的一种安全机制,不用理会,键入root密码后回车。(进入root模式后,命令行最左端用户名会出现相应的变化)
 
2.在命令行中键入“chmod u+w /etc/sudoers ”​。由于sudoers文件为只读,我们需要添加文件的写权限,从而写该sudoers,修改文件后要关闭写权限。
 
3.在命令行中输入“vim /etc/sudoers”。键入后按照命令行下方的提示,输入“E“编辑文件。
 
4.在打开的文档中找到
## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
然后在把光标移到root    ALL=(ALL)       ALL的下一行,然后按下键盘字母“i“即进入了插入模式。然后回车,并在空白行输入以下内容:
xxxx ALL=(ALL)       ALL​
其中xxxx是你的用户名。注其中root与用户名字体颜色一致,两行中的ALL=(ALL)       ALL​颜色一致。注意切换为英文输入法,建议用户名手动键入,ALL=(ALL)       ALL复制root那一行中的。
插入​“xxxx ALL=(ALL)       ALL​”这行后在英文输入法下按下键盘“Esc“键,然后输入“:“,最后输入“wq“后回车,保存修改内容,即出现“:wq“后按回车保存修改。
即修改前内容如下:​
## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
## Allows members of the 'sys' group to run networking, software, ## service management apps and more.
修改后:
## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
xxxx ALL=(ALL)       ALL
## Allows members of the 'sys' group to run networking, software, ## service management apps and more.
 
5​.撤销sudoers文件的写权限,即上述步骤后在命令行输入“chmod u-w /etc/sudoers”
 
上述操作一定是在root下进行的,即步骤一已经成功的前提下。​
通过以上步骤就已经把本地用户添加到sudoers file 中了。注:不要试图找到sudoers文件,然后双击打开后在修改,这会出现“Access to /etc/sudoers was denied.“,权限不够导致的。
 
本文永久更新地址:http://www.linuxdiyf.com/linux/22228.html