ubuntu14.04 /etc/sudoers文件损坏修复

         今天在Ubuntu中新添加了一个用户test, 想要把test用户添加到sudoers文件中,修改完成后保存退出, 然后悲剧就上演了, sudo命令用不了了, 系统又没有root用户登录, 果断百度下, 发现很多和我一样的新手也同样遇到sudoers文件损坏问题。下总结并实践了一些问题和修复方法。

损坏大致情况:

  • 文件权限被篡改;sudoers文件不能有任何写权限,报错情况:

    fang@fang-530U3C-540U3C-532U3C-532U3X:~$ sudo echo a
    sudo: /etc/sudoers is world writable
    sudo: no valid sudoers sources found, quitting
    sudo: unable to initialize policy plugin

  • 语法错误,报错情况:
    fang@fang-530U3C-540U3C-532U3C-532U3X:~$ sudo echo a
    >>> /etc/sudoers: syntax error near line 21 <<<
    sudo: parse error in /etc/sudoers near line 21
    sudo: no valid sudoers sources found, quitting
    sudo: unable to initialize policy plugin
  • 文件丢失, 报错情况:
    fang@fang-530U3C-540U3C-532U3C-532U3X:~$ sudo echo a
    sudo: unable to stat /etc/sudoers: No such file or directory
    sudo: no valid sudoers sources found, quitting
    sudo: unable to initialize policy plugin

修复方案

  • root用户直接修改该,直接修改对应的sudoers文件为正确文件即可,如被删除直接从其他地方抄一个空的就行
  • 无法使用root用户时,可在系统的修复模式下修改;进入修复模式方法
    1. 重启(开机)时按ESC键(这时就会进入grub模式)
    2. 选择修复模式
    3. 选去除root模式
    4. 重新挂载 / 目录, 进来后没有操作sudoers的 权限, 重新挂载获取权限
      mount -o remount,rw /

    5. 编辑sudoers文件至正确
    6. reboot重启系统
正确的编辑方式
  • 不直接编辑sudoers文件
  • 系统提供了visudo工具编辑sudoers文件,该工具具有检查错误功能,可以有效避免权限问题和语法问题

你可能感兴趣的:(linux)