我现在知道我永远不应该尝试etc/sudoers
使用常规文本编辑器编辑该文件。然而,在我了解这一点之前几分钟,我用 Sublime Text 在文件中保存了一个新的用户名。现在,当我运行时sudo cat sudoers
,我收到以下错误:
>>> /etc/sudoers: syntax error near line 1 <<<
sudo: parse error in /etc/sudoers near line 1
sudo: no valid sudoers sources found, quitting
我怎样才能摆脱这个困境呢?
答案1
我看到您已经标记了您的问题osx
,因此如果您是在 Mac 上完成此操作,请使用 GUI。
- 打开任意 Finder 窗口并按
cmd shift G
- 键入
/etc/sudoers
并按return
即可转到文件 cmd i
突出显示文件时按下- 滚动到该信息窗口底部的“共享和权限”,然后单击右下角的锁定图标
- 输入管理员用户名和密码
- 现在使用按钮将您自己添加到该窗口中
+
并选择“读取和写入”权限 - 在任何编辑器中打开文件并修复您第一次搞砸的问题!
答案2
我无法通过在“共享和权限”中添加我的用户名并将权限更改为“读取和写入”来编辑 sudoers 文件。
我未能成功创建新文件并将其权限更改为 root:wheel 和 0440。
最后我不得不进入恢复模式(重新启动 - > cmd+R)
- 通过磁盘实用程序挂载 Macintosh HD
- 通过实用程序转到终端
- 转到 cd Macintosh HD/private/etc
- 编辑 sudoers 文件以更正错误。
- 如果需要,保存并更改权限。 sudoers 文件需要 root:wheel。如果不是,则 sudo 将不会运行。 chown root:wheel sudoers
- 我还将权限更改为 0440,因为最初我删除了 sudoers 并在登录时创建了一个新副本。
答案3
答案4
这对我有用(假设具有管理员权限):
1-启用root用户
- 系统偏好设置 -> 单击挂锁图标解锁(输入用户密码)
- 单击登录选项
- 网络帐户服务器,单击“加入...”->“打开目录实用程序...”
- 单击挂锁解锁
- 单击顶部菜单中的编辑 -> 启用 Root 用户,输入 root 的密码
2- 注销 osx
3- 使用其他用户名登录 osx:root,密码:您在步骤 1 中输入的任何内容
4-打开终端“sudo visudo”并更改您需要更改的内容
5- 注销 root 用户并登录你的帐户
6- 使用系统偏好设置中的相同方法禁用 root 用户(步骤 1)