Ubuntu:borked我的sudoers文件,我该如何解决?

我正在编辑我的/etc/sudoers文件并保存,但是在那里有一个语法错误。 现在我不能sudo vim /etc/sudoers因为sudo认为sudoers文件是无效的。

我该如何解决这个问题?

将系统引导至单一模式,然后进行编辑。

你不应该直接编辑你的sudoers文件。 使用visudo – 它将在未来保护你免受这些语法错误。

要从这种情况下恢复,可以启动到单用户模式,编辑文件或从livecd启动,并执行相同的操作。

正如在askubuntu上这个类似的问题所指出的那样 ,这可能不需要重启到单用户模式就可以工作:

 pkexec visudo 

顺便说一下,如果你有root密码,只需login它并将其设置回原来的样子。

chmod 0440 / etc / sudoers

这将避免您启动到单用户模式或最糟糕的,从livecd启动。

在我的情况下,我不能把服务器closures。

如果您安装了Docker,并且您的用户是Docker组的成员,则无需重新启动或执行任何操作即可轻松将自己从这个泡菜(以及其他一些组件)中解放出来:

  1. $ docker run -it --rm -v '/etc/:/root/host.etc/' debian bash
  2. apt-get update && apt-get install [vim|nano|whatever]
  3. cd ~/host.etc/
  4. 修复问题文件
  5. exit