原创 安装linux+windows的系统 如果grub引导失败的解决方法

2009-8-10 13:51 3849 4 4 分类: 工程师职场

对于安装linux+windows双系统的计算机,如果linux系统崩溃或者grub引导失败,可能导致windows也无法进入。

(1) 通过linux的安装盘重新安装grub引导程序,成功地概率很小,如果你有把握安装成功........Go ahead!


(2) 解决方法1:一般grub引导失败后,就会进入grub的命令行,此时输入以下命令,应该能够引导成功,缺点是每次启动都要手动引导,而且要知道kernel和initrd文件。
        kernel (hd0,6)/boot/vmlinuz
        initrd (hd0,6)/boot/initrd.img
注意:上面的(hd0,6)不是绝对的,根据你的linux系统所在的分区来决定,请看下面定义
(hd0,0)表示第一块硬盘的第一个主分区,一般对应windows的C盘
(hd0,4)表示第一块硬盘的第一个逻辑分区,一般对应windows的D盘
(hd0,6)表示第一块硬盘的第三个逻辑分区,一般对应windows的F盘。


vmlinuz和initrd.img对于不同的系统也是不一样的下面是某个系统里面的文件名。
vmlinuz-2.6.9-67.EL
initrd-2.6.9-67.EL.img


(3)解决方法2:首先恢复windows的引导,然后利用grub4dos进行引导linux。


恢复windows的引导其实就是利用系统盘,进入紧急修复控制台,然后输入fixboot和fixmbr命令,这样就可以重新恢复从windows引导了。如果你不想要linux了,后面的就不要做了,进入windows后,控制面板--->管理工具--->计算机管理---->磁盘管理 找到linux分区,将其格式化为FAT32或NTFS格式的分区就可以在windows下使用了。


如果还想保留linux,就开始下面的过程
首先下载grub4dos,


Grub4dos的下载地址:


把grub4dos-0.4.4.zip直接解压缩到c盘根目录(保证grub.exe, glrdr, menu.lst等文件都在c盘根目录)


修改boot.ini,添加下面一行

    c:\grldr="Start GRUB4DOS"

 

修改menu.lst,添加下面几行

title Fedora Core 11

    kernel (hd0,6)/vmlinuz

    initrd (hd0,6)/initrd.img

注意:vmlinuz和initrd.img也是需要根据实际情况修改。


如何确定vmlinuz和initrd.img的名字
 建议1:如果不知道上面那两个文件的名字,最好使用查看linux分区的软件找到/boot目录来确定这两个文件的名字。或者找到/boot/grub/menu.lst把里面引导linux系统的kernel,initrd直接拷贝到C盘的menu.lst里面。


建议2:直接看别人安装的同版本系统的/boot/grub/menu.lst


建议3:用vmware安装虚拟机,linux选择最小化安装以节省时间,然后查看虚拟机里面的/boot/grub/menu.lst,注意:虚拟机里的kernel和initrd.img肯定都是指向虚拟机(hd0,0)中,你把/boot/grub/menu.lst相应的行拷贝出来后,还要修改(hd0,0)以符合你实际的硬盘分区。


注意:对于使用该方法仍然无法启动的,要注意是否有ACPI的提示信息,如果有则在menu.lst中kernel那一行末尾添上acpi=off noapic,这是网上某个达人总结出来的经验,一般都能解决问题。(eg:  kernel (hd0,6)/boot/vmlinuz acpi="off" noapic)

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
4
关闭 站长推荐上一条 /3 下一条