您的位置:首頁技術文章
文章詳情頁

給Windows Vista系統加入一鍵還原功能

瀏覽:90日期:2023-08-20 10:06:23

很多朋友都喜歡用《還原精靈》、《一鍵Ghost》等一鍵還原軟件,這樣在系統遇到故障的時候就可以快速還原。不過這些軟件在Vista中卻無法使用,因為Vista采用了全新的啟動方式。其實只要稍加動手,我們可以手動為Vista添加“一鍵還原”啟動菜單。這里以預裝Vista單系統的品牌機為例說說如何添加這個功能。另外,對于XP+Vista雙系統的用戶,原來安裝在Windows XP中的還原軟件在XP下仍然可以使用。

小知識:Vista和Windows XP/2000的引導區別。

Windows XP/2000/2003引導時是首先讀取Boot Sector后加載NTLDR(引導文件,用來解析Boot.ini文件),然后開始普通的Windows加載,通過Boot.ini加載啟動菜單進入不同的系統。

而Windows Vista 引入了全新的Boot Manager(啟動管理器)和Boot Configuration Data(BCD,引導文件)的概念。系統引導順序變成POST (系統自檢)→BIOS讀取MBR→找到硬盤分區表中Active的分區→讀取Boot Sector→加載BOOTMGR (Boot Manager),Boot Manager讀取BCD信息然后列出啟動菜單,接著 BOOTMGR將控制權交給Vista系統目錄下的Winload.exe,然后啟動系統,并開始核心加載。如果是XP+Vista雙系統,加載BOOTMGR后把控制權交給Ntldr加載,然后啟動XP。

方法一:給Vista裝一個虛擬軟驅

一鍵還原條件:電腦至少有一個FAT32的分區、已經用過Ghost備份了Vista的系統鏡像beifen.gho

一鍵還原工具:Ghost+Vfloppy

一鍵還原是借助Ghost的批處理在DOS下完成還原操作,在Vista下無法安裝DOS,我們可以通過Vfloppy安裝虛擬軟驅使用DOS。

第一步:由于Vfloppy添加虛擬啟動要通過Boot.ini加載,Vista下沒有該文件,我們要手工建立這個文件。啟動記事本輸入下列代碼,然后保存為boot.ini,放置在C:。

[boot loader]

timeout=6

default=multi(0)disk(0)rdisk(0)partition(1)windows

[operating systems]

multi(0)disk(0)rdisk(0)partition(1)windows='windows xp professional' /NOEXECUTE=OPTIN /FASTDETECT

第二步:同上,啟動記事本輸入下列代碼保存為hf.bat批處理文件,放置在FAT32分區如D盤下,用于自動恢復系統:

C:ghost.exe -clone,mode=pload,src=C:beifen.gho:1,dst=1:1 -sure -rb

命令的意思是運行D盤下的ghost.exe,把D盤下的beifen.gho恢復到第一分區(C盤),這里需要先使用Ghost將系統備份到d:beifen.gho,同時要把Ghost.exe先放置在d:下。

注意:由于Vista安裝分區C盤為NTFS,DOS下D的盤符就是C:,這里一定要注意批處理命令中盤符的書寫。

第三步:下載Vfloppy后將其解壓到d:,到http://zj.onlinedown.net/down/winima70.exe下載WinIamge,然后使用WinIamge打開Vfloppy的“BOOTDISK.img”文件,在WinIamge窗口將AUTOEXEC.BAT拖到d:并保存。

第四步:用記事本打開“d:AUTOEXEC.BAT”,找到“echo The diagnostic tools were successfully loaded to drive %RAMD%.”這行,在“echo.”下添加下面一行內容(如圖1):

call c:hf.bat

命令的意思是啟動到DOS后,調用上面制作的批處理恢復系統,編輯完成后將文件拖回WinIamge窗口的“BOOTDISK.img”替換原文件。

第五步:右擊Vfloppy.exe選擇“以系統管理員身份運行”,映像文件選擇修改過的“bootdisk.img”,顯示文本為“DOS”(不要使用中文字符,否則在Vista啟動管理器會出現亂碼)。單擊“應用”,程序提示引導映像文件成功即可。

第六步:按提示重新啟動后,在Vista啟動管理器中就會出現“DOS”啟動項,選擇它后進入DOS就可以自動恢復Vista了(如圖2)。

這里我們借助Vfloppy在Vista下安裝上DOS,然后通過WinIamge編輯DOS的自動批處理文件實現自動還原系統。如果你的系統全部是NTFS分區,也可以使用WinIamge編輯“BOOTDISK.img”文件,把Ghost.exe拖到“BOOTDISK.img”中(最好是8.3版,可以識別NTFS分區)。啟動到DOS后,在提示符下輸入“ghost.exe”啟動程序手動進行還原。

提示:如果要卸載虛擬DOS,把c:boot.ini、c:boot目錄下的bootdisk.img、BOOTDISK.dsk、bootdisk.bin刪除即可。

方法二:手動給Vista添加啟動菜單

一鍵還原條件:同上,適用Vfloppy無法成功加載虛擬DOS

一鍵還原工具:ghost+Avlgomgr

上述方法雖然方便,不過經測試,可能是由于Vfloppy的缺陷,在有些電腦上選擇“DOS”進入后無法成功加載虛擬DOS。如果遇見這樣的情況,我們可以編輯BCD文件,然后借助穩定的Grub引導進入DOS。

第一步:操作同“方法一”的“第四步”,使用WinIamge編輯Bootfisk.img并將修改過的文件放置在d:。接著“以系統管理員身份運行”Avlgomgr.exe,勾選“虛擬磁盤”,單擊“瀏覽”按鈕,鏡像文件選擇“d:boodisk.img”,單擊“裝配”,把虛擬鏡像添加到系統(如圖3)。

小提示:使用Avlgomgr.exe無須制作boot.ini文件,它會自動生成該文件。

第二步:單擊“開始”,在搜索框輸入“cmd.exe”,然后在搜索結果找到“cmd.exe”,右擊選擇“以系統管理員身份運行”,打開命令提示符后依次輸入下列命令添加啟動項:

1.bcdedit /store c:bootbcd /create /d 'GRUB' /application bootsector

新建一個用bootmgr加載的啟動項,項目名稱為“GRUB”,運行上述命令后,系統會提示“The entry {99f6bb26-5e10-11dc-b804-0016176c84e5} was successfully created.”,其中的“{99f6bb26-5e10-11dc-b804-0016176c84e5}”是系統返回的標識符,每個人電腦不同,記住這個字符,然后把下列命令中的{ID}替換為返回的標識符(如圖4)。

2.bcdedit /store c:bootbcd /set {ID} device boot

設置當前活動分區作為啟動設備

3.bcdedit /store c:bootbcd /set {ID} path Avldr.bin

設置啟動扇區路徑和文件名,這里將Avlgomgr.exe生成的avldr.bin作為啟動扇區文件

4.bcdedit /store c:bootbcd /displayorder {ID} /addlast

加入以上設置項目添加到BCD配置文件中

第三步:重新啟動后在Vista啟動管理器就會出現“GRUB”啟動項,選擇它即可引導到DOS自動恢復系統,進入系統后可以把程序自動生成的c:boot.ini刪除。

小提示:對于不習慣使用bcdedit命令編輯BCD文件的朋友,他們可以先按方法一添加啟動,如果Vfloppy啟動出現故障,可以“以系統管理員身份運行”啟動Avlgomgr.exe,鏡像文件選擇“c:bootboodisk.img”,單擊“裝配”,然后在啟動管理器菜單選擇“Avlgo - BOOTDISK.img”進入DOS即可(啟動項名稱可以打開c:boot.ini編輯修改)。

通過Vfloppy可以自動更改啟動扇區,不過它的啟動方式有BUG。這里借助Avlgomgr.exe加載虛擬DOS鏡像bootdisk.img (裝配后它會在系統盤根目錄下生成avldr.bin啟動扇區文件),而且使用bcdedit將啟動項添加到BCD文件,可以穩定啟動DOS。如果要卸載手動生成的啟動項,在命令提示符下輸入“bcdedit”獲取增加的“grub”項的標識符,再輸入“bcdedit /delete {ID}”即可,這里的{ID}是執行bcdedit后返回的標識符。

使用上面的方法添加一鍵還原后,我們只要在開機后選擇新增的啟動菜單就可以快速還原Vista了。為了方便以后使用,強烈建議添加啟動菜單后再制作系統Ghost鏡像。

注:本文轉自電腦報

標簽: Windows系統
国产综合久久一区二区三区