来源

来源

犯了错误之后,我更改了密码,但现在却记不起来了。

我发现可以通过进入恢复模式来重置它,但我似乎无法做到!我的 MacBook Pro 上同时运行着 Ubuntu 14.04.2 和 OS X Yosemite。

rEFInd安装了启动管理器,但我可以删除它。我尝试Shift在启动时按住三个(?)选项中的任何一个来启动 Ubuntu,也尝试过按住C

无论我做什么,似乎都无法进入恢复模式。

rEFInd以下是我在以及 OS X中获得的三个选项:

  • 从 14GiB ext4 卷启动 boot\vmlinux-3.16.0-41-generic
  • 从 14GiB ext4 卷启动 boot\vmlinux-3.16.0-30-generic
  • 从整个磁盘卷启动 Linux

有人能帮帮我吗?请记住,我无法运行任何 sudo 命令,因为我记不住密码。

答案1

您可以从 CD/USB 启动 LiveCD,然后安装 Ubuntu 并chroot进入其中。

启动 LiveCD 后,打开终端并输入sudo fdisk -l /dev/sda。这将显示正在使用的分区:

$ sudo fdisk -l /dev/sda

Disk /dev/sda: 17.5 GB, 17515986944 bytes
255 heads, 63 sectors/track, 2129 cylinders, total 34210912 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0004634f

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048    31082495    15540224   83  Linux
/dev/sda2        31084542    34209791     1562625    5  Extended
/dev/sda5        31084544    34209791     1562624   82  Linux swap / Solaris

您需要找到Linux最后一列中的那一行。在本例中/dev/sda1是您的根分区。如果您有多个 System 行,Linux则必须尝试

$ sudo mount /dev/sdaX /mnt #where sdaX is your root partition
$ ls /mnt
bin     dev      home      media     proc      sbin     tmp     var
boot    etc      lib       opt       root      sys      usr

的输出ls /mnt应该看起来像这样,否则您选择了错误的分区。如果是这样,请使用卸载它sudo umount /mnt并重试。如果您找到了正确的根分区,请继续:

$ sudo mount --bind /dev /mnt/dev
$ sudo mount --bind /proc /mnt/proc
$ sudo mount --bind /sys /mnt/sys
$ sudo chroot /mnt
$ passwd YOUR_USER_NAME

设置新密码后,输入:

$ exit
$ sudo umount /mnt/dev
$ sudo umount /mnt/proc
$ sudo umount /mnt/sys
$ sudo umount /mnt
$ sudo reboot

答案2

如果您按下 Insert、F2 或 + 键,rEFInd 将显示一个菜单,其中可能包含其他选项,具体取决于操作系统类型。

从选项子菜单中,您可以再次按 Insert、F2 或 + 键来编辑引导加载程序选项。

一个简单的文本模式行编辑器打开,您可以使用箭头键在行中前后移动光标、删除文本以及输入新文本。如果您想使用编辑的选项启动,请按 Enter 键。

来源

找到以 开头的内核行,并在行尾/boot/vmlinux添加以启动到根模式并更改密码。init="/bin/bash"

来源

相关内容