Answers:
使用Boot Repair修复您的引导程序。
打开终端,然后添加启动修复PPA
sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update
安装启动修复
sudo apt-get install -y boot-repair && boot-repair
启动和使用,有关更多详细信息,请参见https://help.ubuntu.com/community/Boot-Repair#Using_Boot-Repair
ls
以获取分区列表set prefix=(hd0,msdos6)/boot/grub
[您几乎肯定会在括号中输入其他驱动器/分区,您可能只需要尝试列出的所有驱动器/分区,ls
直到找到有效的驱动器/分区。insmod normal
normal
,您将返回引导提示!另请参阅:我在这里找到有用的地方。我怀疑这对遇到此错误的每个人都有效,但是我将其放在此处希望对您有所帮助。
一旦你载入Ubuntu的,运行sudo grub-install /dev/sda
和sudo update-grub
尽快。这意味着您不必在每次启动计算机时都执行上述繁琐的过程。
ls (hd0,msdos1)/
来检查分区的内容,如果您有很多分区,则速度会更快。
set prefix=(hd0)/grub
,因为您需要grub
在驱动器上引用相对于驱动器上的分区的目录,而不是相对于其安装点的目录。
我有相同的问题- normal.mod not found
,ls
引导分区会产生一个空行。经过一周的故障排除后,可以正常启动系统,这是我执行的步骤。
获得了SuperGrub的副本并创建了启动CD。现在,我可以重新登录系统了。获得了BootRepair的副本,但不能使系统直接从硬盘启动,因此不得不继续使用CD。BootRepair确实表现得有些奇怪,因为Grub位置和Grub选项均显示为灰色。它确实报告安装成功。
最初设置了硬盘驱动器:(
sda1 ext4 root with boot
sda2 linux swap
sda3 ext4 used as a spare drive
用于虚拟机的虚拟机)。
使用了Ubuntu 10.10 Live CD的副本。冉的GParted缩小sda1
分区,创建sda4
在驱动器和一套安装点的前ext4的启动分区/boot
从删除boot目录之后/
。BootRepair现在具有可用选项。安装在启动分区上,现在可以从硬盘启动。
出于好奇,我决定进一步调查。引导修复日志在我的sda1
ext4分区中有一个特殊的条目,据报告是,它DOS
有一个短的8个字符的UUID,而不是blkid报告的UUID。 grub-probe
报告文件系统为vfat。
经过许多其他试验后,我清除了sda1
分区记录的前440个字节。 Grub-probe
现在将文件系统报告为ext2。然运行,update-grub
并sda1
显示该分区的正确UUID 。
这个问题似乎有两个方面:
1.它似乎影响分区记录引用了msdos的安装。
2. grub-probe
不会尝试解决fs类型与分区记录中的内容之间的不匹配问题。
就我而言,我已经降级为GRUBv1,升级到12.10后,grub2找不到他的文件(* .mod等),尽管grub.cfg在那里。
我找到了有关grub救援的更全面手册:https : //help.ubuntu.com/community/Grub2/Troubleshooting#grub_rescue.3E-1
另请参阅页面开头的命令列表。Thx长笛长笛。