今天在ubuntu下因为修改/etc/sudoers权限导致sudo和su不能使用,出现以下问题:
~$ sudo
sudo: >>> /etc/sudoers:syntax error 在行 21 附近<<<
sudo: /etc/sudoers 中第 21 行附近有解析错误
sudo: 没有找到有效的 sudoers 资源,退出
sudo: 无法初始化策略插件
-
首先要确定你有没有启用过root权限?
使用 ls -l /etc/passwd 查看所有用户及权限。只有可读权限(r),说明用户的权限不够。
我们可以用以下方法修改用户权限:su root #进入超级用户
ll /etc/sudoers #查看/etc/sudoers的权限
chmod 777 /etc/sudoers #修改/etc/sudoers文件的权限成可读可写可执行
echo 'username ALL=(ALL) ALL' >> /etc/sudoers # 'username'指用户名,给指定用户名权限
chmod 440 /etc/sudoers #退出保存/etc/sudoers文件
su username #切换用户到指定用户
如果没有开启过root权限,可以直接使用命令pkexec visudo来对sudoers文件进行修改