[转]:百度经验 https://jingyan.baidu.com/article/c843ea0b9e851077931e4aea.html
Ubuntu14.04系统中,因为误操作导致管理员密码丢失或无效,并且忘记root密码,此时无法进行任何root/sudo权限操作。可以通过GRUB重新设置root密码,并恢复管理员账户到正常状态。
工具/原料
-
Ubuntu14.04操作系统
重置root密码
-
1
启动系统,显示GRUB选择菜单(如果默认系统启动过程不显示GRUB菜单,则在系统启动时需要长按[Shift]键,显示GRUB界面),选择Advanced options for Ubuntu,按下[Enter]进入,选择recovery mode,不要按下回车键。
-
2
按下[e]键进入命令编辑状态,到 linux /boot/vmlinuz-....... ro recovery nomodeset 所在行,将“ro recovery nomodeset”替换为“quiet splash rw init=/bin/bash”,按下[F10]或者[Ctrl+x]重启系统。
-
3
此时以root身份启动一个可读写的bash,直接使用命令passwd更改root密码,然后按下[Ctrl+Alt+Delete]重启系统。
-
4
系统启动后进入字符终端[Ctrl+Alt+F<1...6>],使用root账户和密码登录系统,然后进行恢复管理账户状态操作。(图形界面终端为[Ctrl+Alt+F<7>])
END
系统启动时默认显示GRUB菜单
-
进入系统,以管理权限修改“/etc/default/grub”文件,注释GRUB_HIDDEN_TIMEOUT=0,并修改GRUB_TIMEOUT值(菜单持续显示时间,以秒为单位)
-
然后运行$sudo grub-update,更新修改过的GRUB配置文件,使其生效。
END
未设置root密码的情况
-
1
如果系统在安装之后重未设置过root密码,此时管理员权限也丢失,那么此时可以启动系统进入Recovery Mode,选择后直接按下[Enter]进入
-
2
选择root,进入root shell,然后运行:
#mount -o rw,remount /
#passwd username
重置username对应账户的密码
-
3
如果已经设置过root密码,那么在启动root shell时会出现“Give root password for maintenance”提示,如果root密码一并忘记,那么需要使用第1步中的方法重置root密码。
END
拥有root密码
-
直接进入字符终端[Ctrl+Alt+F<1...6>],使用root账户和密码登录系统,然后进行恢复管理账户状态操作。
END
注意事项
-
系统丢失管理员权限,如果未设置root密码,那么采取第三步中方法恢复管理员账号正常状态
-
系统丢失管理员权限并丢失root密码,那么需要采用第一步中方法先重置root密码,然后再
-
系统丢失管理员权限,如果有root密码,那么采取第四步中方法恢复管理员账号正常状态
#====================================================================================
PS:
操作进入上述3.3后,系统进入到了
root@ubuntu18:~#
vi /etc/sudoers 系统提示ReadOnly,无效修改文件权限,必须mount分区为rw
即:2.2步描述
#mount -o rw,remount /
#passwd username
重置username对应账户的密码
直接添加到超级用户组:
# usermod -a -G sudo 用户名