為了考察Windows 7的安全改進,下了版本號7600的Windows 7 RTM,不過安裝中遇到了一個問題,把解決方法貼出來以供參考。測試用機原本安裝有Windows XP系統(SP3),由於不想破壞原有的分區結構,掛了一塊30G的舊硬盤專門用於安裝Windows 7。這塊硬盤只有一個分區,格式為NTFS,在XP下設置的盤符為W,掛接在IDE口並被設定為從盤。
值得一提的是,在安裝的過程中,插接在串口的主硬盤被識別為了1號硬盤,而後接入的從硬盤被識別為了0號。在從盤上安裝了Windows 7之後,一切正常,不過引導菜單中卻沒有XP。在安裝之前大致查了一下,皆言7600版的Windows 7能正常在系統中已有XP的情況下建立多引導菜單,也許我遇到了百裡挑一的情況?估計是因為主從硬盤盤符沖突之類的問題造成的,似乎大家普遍都是在已有硬 盤上為第二系統建立一個分區,所以少有人遇到這種情況。
基於Windows 7與Vista在基本內核上非常接近,所以利用安裝盤下boot目錄中的bootsect.exe程序修復引導區,比如執行“bootsect /nt52 ALL”命令重置引導區,不過這樣會將引導菜單恢復到安裝Windows 7之前的狀態,這樣雖然XP可以正常引導,但是就無法進入Windows 7了。所以這種方法沒有采用,而是基於同樣的假設,進入Windows 7的系統恢復界面,手動建立XP的引導記錄。
需要注意,在使用bootsect命令的時候,/nt52選項一般是對應Windows XP,而如果第一系統不是XP,而是Vista或其它系統,使用該選項可能會造成引導區失效。另外,如果遇到NTLDR未正確恢復或受到破壞等問題時,可 以嘗試使用MBR選項來同時恢復主引導記錄,比如對於上述描述的情況,使用bootsect /nt52 C: /mbr命令即可。
具體操作方法是:
將Windows 7的安裝光盤放入光驅,在進入安裝界面時,點擊進入恢復界面的鏈接(在Install Now按鈕的下邊),進入之後選擇進入命令行,然後依次執行以下一組命令即可。
1.重新搜索硬盤中的操作系統
bootrec /rebuildbcd
2.創建一條引導記錄
bcdedit -create {ntldr} -D "Windows XP"
3.設置引導分區位置
bcdedit -set {ntldr} device partition=D:
4.設置引導文件所在路徑
bcedit -set {ntldr} path ntldr
5.設置引導記錄的顯示位置
bcedit -displayorder {ntldr} -addlast
執行完這些命令之後,重新啟動,就可以在引導的時候看到名為"Windows XP"的引導選項了,之後可以在Windows 7當中具體設置哪個系統優先啟動以及該引導菜單顯示多長時間等等。
總結一下,Windows 7所使用的引導程序與Windows XP是完全不同的,所以由於分區的沖突可能Windows 7覆蓋了XP的引導程序,當然我們也可以使用XP安裝光盤中的MBR恢復程序或者上邊提到的bootsect恢復程序來將引導程序恢復為XP版本,不過要 保留對兩個操作系統的引導,在新版的引導程序中為老版本的Windows系統建立引導記錄,是最直觀和最安全的方式。