Bootstrap

记一次修改sudoers文件改坏后无法使用的惨痛经历☁☁

由于系统需求在修改/etc/sudoers文件时出现了语法错误,使用vim gedit等均无法打开/etc/sudoers文件,当时慌得一批,因为我感觉可能要凉了。

>>> /etc/sudoers: syntax error near line 27 <<<
sudo: parse error in /etc/sudoers near line 27
sudo: no valid sudoers sources found, quitting

sudo: unable to initialize policy plugin

在经过一系列搜索后找到了最相似的问题和解决办法:

online@online-VirtualBox:~$ cd /etc/
online@online-VirtualBox:/etc$ pkexec visudo

但执行后出现了新的错误:

==== AUTHENTICATING FOR org.freedesktop.policykit.
exec ===Authentication is needed to run `/usr/sbin/visudo' as the super userAuthenticating as: ubuntu,,, (ubuntu)Password:polkit-agent-helper-1: 
error response to PolicyKit daemon: GDBus.Error:org.freedesktop.
PolicyKit1.Error.Failed: 
No session for cookie==== AUTHENTICATION FAILED
 ===Error executing command as another user: 
 Not authorizedThis incident has been reported.

在进行继续查找后发项了新大陆,解决了问题,方法如下:
1.基于当前系统同时打开两个窗口
2.第一个窗口执行如下命令获取Pid:

 echo $$

在这里插入图片描述

3.切换到第二个窗口执行如下命令:(此时窗口会卡住,忽略)

pkttyagent --process +第一个窗口获取的pid

在这里插入图片描述

4.切换到第一个窗口执行:(此时窗口也会卡住,忽略)

pkexec visudo 

5.切换回第二个窗口,会要求输入密码,输入系统的密码

6.切换回第一个窗口,可以看到visudo编辑界面,之后修改语法错误的地方,修改完后Ctrl+x保存

修改完后再次执行sudo vim /etc/sudoers可以正常进入该文件

;