WIN7XP雙系統(tǒng)和ThinkPad一鍵恢復(fù)
X200到手已經(jīng)有幾
個月,花了一個多月時間才把WIN7啟動管理和Think一鍵恢復(fù)搞清楚,其間想走捷徑確實走了
不少彎路,后來就一直搞U盤啟動裝系統(tǒng),又走了不少彎路,結(jié)果還是回到原點。再想做一鍵恢復(fù)時竟然把當初搞了
一個多月的東西忘了。還是寫文字記下來踏實。。。。
Windows 從Vista開始用新的啟動管理器,比以前XP的NTLDR復(fù)雜得多,當然功能也強大,只是不太方便,和
GRUB4DOS相比簡直是太不方便了。但是它是系統(tǒng)自帶的,用它也是不可避免了。Windows提供了一些工具,BCDEDIT
對啟動管理數(shù)據(jù)庫進行創(chuàng)建修改編輯,BCDBOOT用來在新盤上創(chuàng)建BOOT文件,BOOTSECT用來切換系統(tǒng)盤的引導系統(tǒng)(
XP或Vista),也就是更改為對應(yīng)的MBR和BOOT。在BCD數(shù)據(jù)庫里每個啟動項都有一個隨機生成的唯一標識符,這是很
長的一串字符,中間由“-“相連接,要修改哪個項就要找對應(yīng)的標識符。但似乎WIN7和RAMDISK啟動加載項比較特
殊,手動創(chuàng)建不行,需要用PE的原BCD和系統(tǒng)盤的BCD。但是可以在這個BCD里建ramdisk的復(fù)制項,再改device和
osdevice項,修改對應(yīng)的路徑。例如: ramdisk=[boot]\tvtos\winpe.wim,{7619dcc8-fafe-11d9-b411-
000476eba25f} 改為 ramdisk=[boot]\sources\boot.wim,{7619dcc8-fafe-11d9-b411-000476eba25f},只能改文件
名和路徑,后面一長串{}里的不可改,就可以從U盤上分別啟動不同的PE。使用BCDBOOT可以在這個BCD基礎(chǔ)上添加
WIN7的啟動加載項,就可以從U盤啟動C盤WIN7系統(tǒng)。要啟動XP就要在BCD手動創(chuàng)建一個NTLDR啟動項,NTLDR作為一個
已知的啟動加載項,可以直接用{ntldr}來標識和調(diào)用。增加device和path子項就可以啟動對應(yīng)盤上的XP系統(tǒng)。
ThinkPad一鍵恢復(fù)在兼容機上一直在用,所以想在X200上也想如法炮制,結(jié)果越搞越麻煩。X200裝的是WIN7,
水貨所以沒有一鍵恢復(fù),那就只好自己做了,從LENOVO網(wǎng)站下了ThinkVantage 應(yīng)急與恢復(fù)系統(tǒng)(R&R 4.30.0027)
(Windows 7)裝上,做備份,一鍵恢復(fù)就有了,很簡單的東西,找經(jīng)銷商得收200大元。但是我想跟以前一樣,單獨
分一個區(qū)做備份,可以啟動可以隱藏。R&R4.3是不管哪個分區(qū)均可啟動還原系統(tǒng),系統(tǒng)分區(qū)也可以,而且不會隱藏
備份分區(qū),它的這種默認方式不是我想要的。還得自己動手。找到bmgr.exe,bmgr32.exe,bootmgr.bin備份下來。
首先要準備一個PE啟動盤,U盤最好,可以把TVTOS加進去。再重做硬盤分區(qū),水貨機沒有光盤,所以驅(qū)動和一
鍵恢復(fù)的備份一定要先做好,R&R的TVTOS就是Windows PE 3.0,復(fù)制安裝R&R時生成的TVTOS目錄到U盤上,如上生成
啟動項就可以從U盤啟動TVTOS,備份文件很大只能用移動硬盤了。因為要裝WIN7和XP雙系統(tǒng),分區(qū)仍就用MBR分區(qū),
再加一個備份分區(qū),并且要三個分區(qū)都能獨自啟動,就要分三個主分區(qū)。MBR只能分四個主分區(qū),但四個分區(qū)是不夠
用的,第四個主分區(qū)只能分成擴展分區(qū)了。WIN7和XP為NTFS格式,備份分區(qū)因為要啟動DOS,只好是FAT32了。先用
TVTOS恢復(fù)第一個分區(qū)的WIN7系統(tǒng),然后將其隱藏,激活第二分區(qū),安裝XP系統(tǒng),完成后,再激活第一個分區(qū),啟動
WIN7,從第二分區(qū)上復(fù)制NTLDR、BOOT.INI和NTDETECT.COM到第一個分區(qū),用BCDEDIT添加NTLDR啟動加載項,devcie
子項為partition=c:,path子項為\ntldr,description子項為Windows XP professional,重啟選擇Windows XP
professional就可以啟動XP。如此最大的好處是啟動哪個系統(tǒng),哪個系統(tǒng)所在分區(qū)就是C區(qū),另外的主分區(qū)就會自動
成為最后一個分區(qū)。
然后就是做備份分區(qū)了,這個分區(qū)要啟動的項比較多,WINPE、TVTOS、DOS、ERD2005和WIN7、XP,做起來比較
煩瑣。WIN7的bootmgr不支持DOS啟動(也有可能我沒搞明白),還是要借助XP的NTLDR來啟動,這就需要FAT32的BOOT扇
區(qū)文件。先用DOS啟動盤引導,SYS到備份分區(qū),只有一個FAT32的話,就是C盤。這時的MBR是DOS的,所以需要用PE
再引導一下用BOOTSECT還原為WIN7的MBR。啟動機器進WIN7,以管理員權(quán)限運行WinHex,打開硬盤,選擇備份分區(qū),
復(fù)制第一個扇區(qū)的內(nèi)容另存為BOOTSECT.DOS。如果有別的盤FAT32 BOOT扇區(qū)文件就不用這一步了,用現(xiàn)在分區(qū)的BPB
換掉舊文件的BPB表就可以了。
DOS的引導文件做好后,需要再用BOOTSECT把備份分區(qū)的BOOT改成WIN7的BOOT,這一步直接在系統(tǒng)里做就可以,
不用重啟機器。
1、WINPE啟動:復(fù)制WINPE啟動文件到備份分區(qū);
2、TVTOS啟動:BCDEDIT復(fù)制ramdisk啟動加載項,如上修改device和 osdevice添加TVTOS啟動項。復(fù)制做一鍵
恢復(fù)時產(chǎn)生的TVTOS,preboot目錄和所有備份文件到分區(qū)。
3、DOS啟動:復(fù)制XP系統(tǒng)分區(qū)的NTLDR、NTDETECT.COM、BOOT.INI到分區(qū)。BOOTSECT.DOS復(fù)制到boot目錄。
4、ERD2005啟動:建立文件夾MININT,將ERD2005系統(tǒng)i386目錄里的文件全部復(fù)制到文件夾,在txtsetup.sif文件里找到SetupSourcePath = "\"改為SetupSourcePath = "\MININT",并將setupldr.bin復(fù)制為根目錄下的$ldr$。用WinHex編輯$ldr$,將所有$WIN_NT$.~BT替換為MININT,長度不夠十六進制部分以0填充,不能插入或刪除字符。(這一步費了很多時間才找到這個方法,以前只做過FAT16的ERD2005啟動)
5、WIN7啟動:用BCDBOOT為BCD添加啟動項,檢查子項,不對的地方參照WIN7系統(tǒng)的BCD修改。
6、XP啟動:BCDEDIT創(chuàng)建NTLDR啟動項,如上步驟。
7、修改BOOT.INI文件,內(nèi)容如下:
[Boot Loader]
Timeout=0
default=multi(0)disk(0)rdisk(0)partition(2)\WINDOWS
[Operating Systems]
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin
/fastdetect
C:\boot\bootsect.dos