為了考察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系統建立引導記錄,是最直觀和最安全的方式。