建议先装windows再装linux,安装系统的时候都会在mbr中写引导块的 ,linux安装一般会装一个 grub,不过你不小心把linux的分区删除了,引导程序就不能读出系统所在的位置,导致出现gurb命令提示。这时候可以手动启动 比如我的win7在c盘, 输入如下3个命令就可以了
1. rootnoverify (hd0,0) 设为根分区/root设备,但不加载文件系统。(hd0,0)表示第几个硬盘的第几个分区
2. chainloader +1 将启动引导权转交给当前分区的首扇区
3. boot
但这样每次开机你都要输入,我们就要修复一下主引导扇区MBR(硬盘的第一个扇区), 一个扇区是512个字节,前面446个字节用于引导程序,接下来64个字节用于存放分区信息,最后2个字节为结束标记。修复的方法很多,xp下可以用个工具 http://jelle.go.nease.net/resource/clsmbr.exe,运行一下就可以了,win7这个小工具不能用,我们可以从安装包中拷贝bootsect.exe这个文件,在boot文件夹中, 然后在cmd中 输入 bootsect /nt60 SYS /mbr 就可以了。
如果你先装了linux再装windows,可能你就不能进入linux了,这时候你可以手动在windows下线添加一个grubdos的启动项, xp的添加方法比较简单, win7中需要用到bcdedit来添加, 你可以查看帮助就知道了 bcdedit /?。
bcdedit /create /d "grub" /application bootsector
bcdedit /set {id} device partition=c:
bcdedit /set {id} path /grldr.mbr
bcdedit /displayorder {id} /addlast
这里的grldr.mbr是grub安装包中的,你需要拷贝到c盘或者其他盘,添加之后启动我们可以进入grub中,手动启动linux了。
kernel (hd0,x) /vmlinuz 你需要知道你安装的linux的位置第几个硬盘的第几个分区
initrd (hd0,x) /initrd.img
boot
我们一样可以利用这个方法来安装linux,如果你没有安装盘,你可以把linux安装包放在FAT32格式的某一个盘中,将安装包中的 vmlinuz 和 initrd.img 这俩个文件拷贝出来,按照上面这个方法来启动安装文件iso所在的 盘就可以进行安装了。
Linux下有个程序可以修复MBR,先下载ms-sys,然后执行 ms-sys -mbr /dev/sda1 就行了,效果和DOS下的“fdisk /mbr”是一样的。