装完win8后grub会被覆盖,试了很多方法都没用,我用的PE光盘里的Grub命令行也认不出Linux分区里的文件,显示全是乱码。只好自己做个Grub2的引导U盘。
首先你需要一个Linux系统来在U盘上安装Grub2。我是在虚拟机里临时装了个Ubuntu12.04,因为手头正好有镜像。
先确定你的U盘能从MBR启动,不确定可以在Linux下格式化一遍,选择MBR方式,我用的是Ubuntu那个自带的格式化工具。
注意格式化前要先取消挂载。
格式完后新建分区。
然后执行sudo grub-install --boot-directory=/media/u --recheck /dev/sdb
u是挂载文件夹的名字,sdb是设备名。
没错误返回就是安装完成了。
然后重启计算机从U盘启动就会进入Grub命令行。
Grub2和Grub的命令是不同的,可以自己去看下 我就不说了。
根据网上找的资料,我set root后用linux载入了内核,用initrd载入内存盘 然后boot。。。。
可惜不行,这时应该是内存盘里的Linux,并不是磁盘上的Ubuntu吧,我也不清楚,望高手告知为什么这样不行。
网上的资料可能老了,只能靠自己了。翻了下Grub2的手册,发现了normal [FILE]这个命令,作用就是载入Grub2菜单。
这就好办了,只要载入原来的引导菜单应该就能正确引导了。
set root=(hd0,4)
normal /boot/grub/grub.cfg
然后就会出来熟悉的Grub引导菜单