我有一个双启动系统Windows 7的和Ubuntu 12.04。
系统用作Grub
其引导加载程序。
但是,今天我错误地缩小了 Windows 卷并创建了一个新卷,一切正常,只是当我重新启动时发现引导加载程序出错了。
它显示:
error: no such partition
grub rescue>
我浏览了 Google 和几个论坛,最终发现了很多东西。
例如:
grub rescue> ls
(hd0) (hd0,msdos5) (hd0,msdos4) (hd0,msdos3) (hd0,msdos1)
现在,我可以加载回 grub 菜单并正常启动 Ubuntu 和 Windows,但需要处理grub 救援作为:
grub rescue> set root=(hd0,3)/boot/grub
grub rescue> set prefix=(hd0,3)/boot/grub
grub rescue> insmod normal
grub rescue> normal
虽然这需要Grub 菜单选择操作系统,但我想摆脱这种情况。
如何修复蛴螬恢复到之前的屏幕?可能需要在 grub 中进行一些重置,我不知道该怎么做。
请提供任何方法。
附言:尝试建议一种使用普通用户帐户的方法,因为我必须花更多时间才能获取sudo
密码。
谢谢。
答案1
您可能需要使用 Live 系统重新安装 GRUB。由于您没有提供输出ls (hd0,X)
,因此您应该根据需要进行修改:
在实时会话中,打开终端,然后输入
sudo blkid
。你将获得类似如下的输出:/dev/sda1:UUID="bf554a2f-a035-4c22-bca8-162def35a03c" 类型="ext4" /dev/sda2:UUID="3962db06-3776-4f38-8ab9-eab6feeccc1d" 类型="ext4" /dev/sdb1:UUID="AA64B45A64B42AC9" 类型="ntfs" /dev/sdb2:UUID="F66E431C6E42D551" 类型="ntfs" /dev/sdb3:UUID="75a0854b-8b6b-453f-8aec-2a081a1f19e3" 类型="swap" /dev/sdb5:UUID="279a18da-130b-46dd-8b54-84da48eb445f" 类型="ext4" /dev/sdg1:UUID="393cd35e-b827-4dea-acb5-2a66f2369dce" 类型="ext4"
在这里你可以看到我的硬盘在 中,
sda
而我的 pendrive 在 中sdg
。我们感兴趣的是sda
。现在让我们看看分区的描述。我们想要 ext4 的分区。在我的情况下,我有两个 ext4 分区。这是因为我有分离的(这似乎也是你的情况),我会注意到这一点,但让我们假设你现在/boot
没有分离,并且你的(根)是。现在我们将挂载 sda1。/boot
/
sda1
sudo mount /dev/sda1 /mnt sudo mount -o bind /proc /mnt/proc sudo mount -o bind /dev /mnt/dev sudo mount -o bind /dev/pts /mnt/dev/pts sudo mount -o bind /sys /mnt/sys
技术说明:这是最低要求。如果你有一个
/boot
分区(或任何其他分区),只需以相同的方式安装它,就我的情况而言sudo mount /dev/sda2 /mnt/boot
。请注意,我使用了/mnt/boot
,如果使用其他挂载点则应进行更改。现在我们继续对分区进行 CHROOTING:
sudo chroot /mnt /bin/bash
现在我们继续安装 grub:
sudo grub-install /dev/sda
完成。现在重新启动系统。这应该会添加 Windows 和 Ubuntu 的条目。