因為Win7(Vista同理)的激活方式是通過grub摸你OEM的Slic信息,所以主引導分區MBR被這個grub占用,以此才能激活WIn7。但是如果想同時安裝Linux在別的分區,就會產生問題:grub不能往MBR添加,否則會破壞Win7的激活。
網上有一些復雜的方法,但是要輸入一大堆命令行。這里提供自己摸索的最簡單的無需命令行的方法。
而且重裝win7或者linux都可以很容易修復。
1、正常安裝Win7到C盤,並激活。
2、正常安裝Linux到其他分區,最后要求寫入grub時,選擇Linux掛載點為/的分區!這一步很重要,因為grub寫入linux所在分區不會將MBR的grub覆蓋!3、這時Win7可以正常啟動,但是沒有選項來選擇進入linux。下載easybcd這個軟件,現在最新的是EasyBCD_2.0_Beta_-_Build_60,越新越好。
4、打開easybcd,在add/remove entry里面,選擇linux,Type選擇grub,在Name添加上你想要的名字,隨便寫一個如archlinux,Driver選linux所在的分區。這里選擇的分區要和剛才安裝linux時grub安裝的位置一致。可能分區號Partition X與linux安裝時的不一樣,這里就要通過硬盤大小來確定哪一個。最后add entry保存好,view settings就可以看到兩個選項了,一個是本來的win7,一個是剛剛建的。
5、重啟,完成。
最后說一下啟動順序,計算機啟動,讀取MBR的grub(包含了win7激活信息的grub),然后執行win7的bootmgr,顯示win7啟動引導菜單,這時可以選擇加入的archlinux引導項,進入linux分區的grub(這是和MBR互不相干的另一個grub),通過這個grub來引導linux,同時這個grub也可以在linux中直接修改。
核心思想就是linux的grub安裝到非mbr的分區中,然后通過win7的bootmgr連接到這個linux的grub。
重裝Win7后,可以再次使用easybcd來完成修復linux的grub。
重裝linux后,還是將grub安裝到linux分區,Win7無需改變即可。
官方網址:http://neosmart.net/wiki/display/EBCD/EasyBCD+Documentation+Home