解决Mac 执行 sudo命令报/etc/sudoers is
2021-12-30 本文已影响0人
CoderZb
报错内容如下:
image.png
原因:
只因执行了下面这一段代码:将
private
文件的权限修改为777,即可读可写可执行
。
image.png
虽说里面的某些文件更改权限失败,但是etc
下的sudoers
却受到了影响
image.png
解决办法:两大步骤
步骤一:启用Root用户
- 用户与群主
-
image.png
-
加入
image.png
-
打开目录实用工具
image.png
- 启用Root用户
-
image.png
- 为Root设置密码
-
image.png
- 变成
停用Root
用户,说明已经启用Root用户 -
image.png
步骤二:终端输入如下内容即可
- 进入到root用户
su
- 查看 sudoers文件的详情信息(参数
-l
)。
ls -l /etc/sudoers
-
image.png
- 可以看到sudoers文件有
-rwxrwxrwx
,表示着文件所有者、用户组users、其他用户的权限 。三个字母为一组,可以得知文件所有者
有读写执行
的权限,用户组users
也有读写执行
的权限,其他用户
也有读写执行
的权限。但系统默认要求的是只有读写
的权限。因此接下来我们要将其修改成只有读写的权限
权限 | 二进制 | 值 | 含义 |
---|---|---|---|
r |
00000100 | 2^2=4
|
读 |
w |
00000010 | 2^1=2
|
写 |
x |
00000001 | 2^0=1
|
执行 |
- 更改sudoers文件只有
读写
权限
chmod 440 /etc/sudoers

- 查看 sudoers文件的详情信息(参数
-l
)。
ls -l /etc/sudoers
-
image.png
- 退出
exit
最后重新执行sudo命令尝试
-
image.png
可以看到虽说执行sudo ls
能看到列表信息了,但是还会提示一些警告,只需要对重复以上步骤对sudoers.d
修改一下权限就行了,关键命令chmod 440 /etc/sudoers.d