Linux下普通用户sudo更改文件权限报错xxx is not in the sudoers file. This incident will be reported.
解决方法就是添加该用户的权限,即修改/etc/sudoers文件。步骤如下:
- 切换到root用户
在当前用户的命令行中输入su
即可切换,这里会提示输入密码(即为你的登录密码,密码输入的时候不会显示)。
当然你也可以先logout,然后再通过ssh连接远程服务器,即ssh root@ip
- 给root用户添加/etc/sudoers文件的写权限
/etc/sudoers文件默认是只读的,所以我们需要先给root用户添加写权限,输入以下命令:
chmod u+w /etc/sudoers
- 编辑/etc/sudoers文件,给普通用户添加权限
用vi打开此文件,然后输入/root
定位到:
然后在下面添加一行xxx ALL=(ALL) ALL
这里还需要注意的是添加权限有四种方式:
xxx ALL=(ALL) ALL # 允许用户执行sudo权限,需要输入密码
%xxx ALL=(ALL) ALL # 允许用户组里面的用户执行sudo权限,需要输入密码
xxx ALL=(ALL) NOPASSWD:ALL # 允许用户执行sudo权限,不需要输入密码
%xxx ALL=(ALL) NOPASSWD:ALL # 允许用户组里面的用户执行sudo权限,需要输入密码
然后输入:wq
保存退出即可。 - 撤销/etc/sudoers的写权限
这个文件非常重要,所以我们为了安全起见,需要撤销该文件的写权限。命令如下:
chmod u-w /etc/sudoers