给普通用户赋予sudo权限后报错,提示/etc/sudoers文件权限拒绝

时间:2019-06-12
本文章向大家介绍给普通用户赋予sudo权限后报错,提示/etc/sudoers文件权限拒绝,主要包括给普通用户赋予sudo权限后报错,提示/etc/sudoers文件权限拒绝使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

在Ubuntu 16.04系统里给普通用户赋予sudo权限,编辑vi /etc/sudoers 文件内容后发现执行sudo命令报错。

  当我运行命令检查sudo权限的时候 sudo -i 输出错误提示:

>>> /etc/sudoers: syntax error near line 24 <<<
sudo: unable to stat /etc/sudoers.d/README: Permission denied
sudo: parse error in /etc/sudoers near line 24
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin

  仔细看这段提示是说运行sudo命令的时候遇到4个错误。分别是:

/etc/sudoers.d/README文件没有权限

/etc/sudoers文件内容第24行有语法错误

找不到有效的sudoers源

无法初始化策略插件

  于是,切换到root用户,执行 vi /etc/sudoers 编辑文件内容,将第24行的错误改正(注释掉)之后保存退出。然后再出来切换到之前的普通用户执行 sudo -i 输出错误提示只剩下一个:

sudo: unable to stat /etc/sudoers.d/README: Permission denied

  明白了,是应为文件权限的问题。切换到root用户修改用户和权限就行了:

chown -R root:root /etc/sudoers.d
chmod u=rwx,g=rx,o=rx /etc/sudoers.d/
chmod u=r,g=r,o= /etc/sudoers.d/*

  将sudoers.d文件夹的权限设置成root用户和root组,root组只有执行的权限,只有root用户有写入的权限。

至此,再次切换回普通用户,执行 sudo -i 命令发现正常。

原文地址:https://www.cnblogs.com/xiongzaiqiren/p/11011296.html