昨晚因为改编译错误,修改了sudoers里的内容,导致(1)[用户名]不在sudoers文件中,同时,(2)su无法验证的解决办法。
对于问题(1):网上解决办法
su root
//使用root登陆
visudo
//在root下添加自己的用户名
root ALL=(ALL) ALL
[users] ALL=(ALL) NOPASSWD: ALL
执行到su root
时就显示su无法验证的解决办法
。
所以,去找问题(2)的解决办法:
1 yr@ubuntu:~$ sudo passwd
2 密码:<--- 输入安装时那个用户的密码
3 输入新的 UNIX 密码:<--- 新的Root用户密码
4 重新输入新的 UNIX 密码:<--- 重复新的Root用户密码
5 passwd:已成功更新密码
6 yr@ubuntu:~$ su
7 密码:<--输入重置的新密码
8 root@ubuntu:/home/me# #已经进入root用户
执行sudo passwd
就又出现[用户名]不在sudoers文件中
。
突然,感觉自己进入死循环,差点去重装系统了。
然而,柳暗花明又一村!
一、首先,参考了博客:Ubuntu sudo无法使用,su密码不对的解决办法
1、开机点击ESC,进去GUN GRUB界面
1.2、选择有recovery mode的选项,按e进入命令行
3、找到有recovery nomodeset的行,删除recovery nomodeset,并在本行末尾加上quiet splash rw init=/bin/bash,按F10;
4、在命令行输入passwd +用户名,修改密码,若修改成功,则会返回password updated successfully
5、重启reboot
二、然后,继续参考了博客:用户名 不在 sudoers文件中,此事将被报告。
1、进入root模式,su root
,再输入正确密码
2、通过cd /etc
进入etc文件中,
3、通过vim打开sudoers并编辑vim sudoers
找到root ALL=(ALL:ALL) ALL
文件,在下方添加自己的账户yr ALL=(ALL:ALL) ALL
并:wq!进行强制保存退出.