刚才在虚拟机中玩Ubuntu的时候,在Cockpit管理页面把账号“服务器管理员”的选项给取消了,然后重新登录之后,就不能执行sudo指令了,所有需要root权限才能访问的文件(目录)、执行的命令全部都不行了。

执行sudo时,系统会报错:

1witton is not in the sudoers file. This incident will be reported.

这可是除了root用户外唯一的用户了,而且不知道root密码(Ubuntu系统默认是不允许root用户登录的,也没不知道root密码),于是要想办法恢复管理员身份。

普通用户设置为可以使用sudo命令的管理员,是通过将普通用户添加到sudo组来实现的,查看/etc/group文件,可以看到sudo组后面有witton账号:

由于witton账号已经是一个普通用户了,是无权修改/etc/group文件的。也可以修改/etc/sudoers文件,在:

1# User privilege specification
2root	ALL=(ALL:ALL) ALL

后面添加一行witton ALL=(ALL:ALL) ALL即可。

现在最主要的问题是能访问并修改这两个需要root权限的文件。

之前也玩过虚拟机,记得虚拟机是可以将虚拟磁盘直接映射到系统中来的,但是VM17没有这个功能了,可以使用ImDisk映射或者DiskGenius来打开虚拟磁盘。复制出来,修改后再复制回去,重新启动系统即可。