1、重新启动系统。待系统启动到grub或lilo(现在一般是grub)引导菜单时,找到系统当前引导项(可以按方向键展开隐藏的菜单)
2、把光标定位在该选项上按下字母“e”键进入这个引导的编辑状态;
3、该选项有三行语句,请用光标选中第二行,也就是“Kernel”开头的 那一行;
4、在这一行再按下字母“e”键进入这一行的编辑状态;BT4
5、在该行行尾加个空格,写上数字1,类似这样:
kernel /boot/vmlinuz-2.6.9-11.19 ro root=LABEL=/ 1
6、修改以后,按下“回车”键回到原来的界面;
7、按下字母“b”键开始引导。
这样,就可以启动linux的单用户模式,有点类似windows的安全模式,就是只启动最基本的系统,网络服务、系统服务等都不启动。单用户模式引导完成以后,会有#提示符,表示已拥有超级用户权限,然后请在#后执行命令:
/usr/bin/passwd
系 统应该会提示输入口令,这个口令是不回显的,保证输入无误就可以了,回车后,系统会要求再输入一遍,输入要求一致,然后会看到口令修改成功的提示。再键入 命令 init 3键入系统的字符界面模式下(系统会重新改变运行级别),看到login:提示,再重新试一试是否可以用root和刚刚修改过的口令登录。
方法二:
如果用户具有sudo权限,那么直接可以运行如下命令:
#sudo su root
#passwd
#更改密码
或者直接运行sudo passwd root命令就可以直接更改root密码。
有关sudo su的区别:
1.共同点:都是root用户的权限;
2.不同点:su仅仅取得root权限,工作环境不变,还是在切换之前用户的工作环境;sudo是完全取得root的权限和root的工作环境。
方法三:
1. 开机,如下图所示(没有装虚拟机,手机拍的图片凑合这看把):

2. 此时会有一个选项:Advanced Options for Ubuntu, 选中直接回车 ,如下图:

3. 看到里面有很多选项,选中后面带recovery mode的选项(千万别回车!),按下字母e,如下图:

4.关键的时候到了, 倒数第四行,会看到一行linux /boot/vm.......ro recovery \nomodeset,
step 1: 删除recovery \nomodeset
step 2: 在这行的最后添加 quiet splash rw init=/bin/bash
5. 按F10, 启动。
6. 如果没有意外你会进入系统, 输入:passwd, 系统会提示你输入新的密码,结束。
方法四:
如果用户不具备sudo权限,则方法一不能用,并需进入GRUB修改kernel镜像启动参数。本文使用的ubuntu版本为11.04,具体过程如下为:
1重启电脑安ESC键或者F2键进入GRUB引导模式如下图所示,选择第二行的recovery mode。

2 安e进入recovery mode 编译kernel进行启动参数。
3 在linux /boot/vmlinuz...这一行后面添加 quiet splash rw init=/bin/bash。然后ctrl + x 就可以直接运行。

4 运行后系统直接进入root mode,此时运行passwd命令更改密码。
方法五:
1、将系统光盘的第一张插入光驱,重新启动系统,从光驱成功引导后在boot: 后输入linux rescue回车。
2、跟着引导程序向下走,不必配置网络。但提问是否手索并挂载系统分区时选择“是”,系统进入“#”提示符下。
3、执行命令chroot /mnt/sysimage/ (默认的系统会挂在/mnt/sysimage/目录下) 思科路由器
4、执行命令/usr/bin/passwd来修改root口令。
5、执行命令exit; ,取出光盘,重新启动系统。然后用新的口令登录系统。即可完成root密码修复。