win7 linux 双系统引导修复

建议先装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”是一样的。

你可能感兴趣的:(windows,linux,dos,XP,Path,工具)