Ubuntu 16.04 Xenial:如何重置密码(忘记密码)

最近一直没用VM,然后突然要用到的时候忘记密码了。root和各个user都忘记了。无奈,找了些方法都有点老。到root那一步还是要admin的权限密码。最后终于搞定顺利登入系统,把方法分享给大家:

环境背景

虚拟机:VirtualBox VM
系统:Ubuntu 16.04 Xenial

重启进入Grub Menu界面

首先,我们需要重新Ubuntu 16.04,当出现VB的标志时,按shift(长时间按住),直到进入Grub页面。

image.png

编辑修改Grub

当我们进入Grub页面后,用上下键选择到我们需要使用的ubuntu项目。然后按e,进入编译界面。

image.png

修改boot信息

当我们进入编辑界面后,选择到Linux的启动配置项目。然后将read-only(ro)改为read&write(rw),同时将初始化设置为命令行(init=/bin/bash)。
原始:

linux     /boot/vmlinuz-4-4.0-22-generic root=UUID=43ad24d3-e\
c5b-44ee-a099-a88eb9520989 ro  quiet splash $vt_handoff

修改后:

linux     /boot/vmlinuz-4-4.0-22-generic root=UUID=43ad24d3-e\
c5b-44ee-a099-a88eb9520989 rw init=/bin/bash

修改完成后,使用F10或者CTRL+x重启系统。

修改密码

之前都搞定后,我们就能够看到以root用户登录的命令行界面了。这时候我们需要确保该root用户已经被挂载为可读可写的权限:

root@(none):/# mount | grep -w /
image.png

如果权限正确,那么就可以使用passwd [username]命令来修改密码了。
搞定!重启之后就看到了登录界面,然后用新密码登录即可。注意这里重启的指令为:

root@(none):/# exec /sbin/init

可能遇到的问题

  • 如果在修改密码的时候遇到权限不正确:
Enter new UNIX password:
Retype new UNIX password:
passwd: Authentication token manipulation error
passwd: password unchanged

这说明我们的root只有可读权限,使用该命令将其设为可读可写:

# mount -o remount,rw /
  • [ end Kernel panic - not syncing: Attempted to kill init! exit code=0x0007f00
    确保在修改Grub信息的时候,移除掉了splash的这个启动项。

  • 在使用reboot命令进行reboot的时候,出现一些错误
    使用如下命令进行重启。

# exec /sbin/init

参考链接

  • Your system Guide to GNU/LINUX
  • For old Ubuntu verson

你可能感兴趣的:(Ubuntu 16.04 Xenial:如何重置密码(忘记密码))