iThome

內建在Windows 7、Vista和Server 2008內的修復平臺WinRE,具有備份、還原與診斷等功能,在Vista環境下,它無法直接從硬碟中啟動,所以一旦作業系統無法開機,往往還需要找出原版的安裝光碟才能修復,對於平常需要管理大量光碟的IT人員,或是根本沒有安裝光碟機的電腦來說相當麻煩,因此最好能將WinRE加入開機選單中來執行。

WinRE與WinPE

微軟在Windows XP系統中,提供了「Windows預先安裝環境(WinPE)」,讓IT人員或OEM廠商能更容易地大量部署Windows作業系統。

由於WinPE僅提供安裝Windows所需的最基本元件,具有環境單純、速度快、耗用空間小等特點,因此也有許多工具軟體廠商開始利用WinPE來建立修復光碟。這不僅是因為WinPE具有上述特性,在許多測試條件下,可能電腦中根本還沒有安裝完整的Windows系統,或是因Windows有問題而無法啟動,讓使用者必須利用診斷工具來修復,這時只要有這類診斷光碟,就可以在無視原本作業系統的情況下,開機進入WinPE並執行各種工具。

微軟在Windows Vista中,將原本只有OEM廠商或具備大量授權的企業才能取得的WinPE,再搭配其他工具一併整合至WAIK中,開放讓使用者自行下載,同時再以此為基礎設計出圖像介面的修復工具WinRE(Windows Recovery Environment)。目前IT人員可利用這個環境,修復因註冊機碼損毀、檔案系統錯誤、作業系統讀取失敗、開機磁碟異常,以及系統檔案損毀等常見的作業系統啟動問題。

到了Windows 7,WinRE已經直接內建在開機選單裡,但如果原本電腦中使用的是Vista系統,想要啟動WinRE環境,就必須放入Vista安裝光碟,或是手動將WinRE安裝至硬碟或隨身碟等儲存裝置。

作法:將WinRE加入開機選單

想要在Vista開機失敗時讓系統自動進入WinRE,或是在開機的F8選單中新增WinRE選項,就必須先安裝WinRE,安裝的目標可以是本機磁碟(系統磁碟以外的磁碟分割)、外接式磁碟或USB隨身碟等。

在安裝WinRE前,我們需要先利用WinPE來建立WinRE映像檔,作法是先安裝WAIK套件,之後以系統管理員的身分開啟Windows PE工具命令提示,並在系統磁碟下建立winre資料夾。完成後,我們可以用imagex.exe指令中的export參數,將Vista光碟內的boot.wim檔,複製到winre資料夾。接著,再用mountrw參數把檔案掛載至mount資料夾。

之後新增一個純文字文件,在修改內容並命名為winpeshl.ini後,將它複製到winre的Windows\System32資料夾中,這時我們其實已經完成WinRE的映像檔製作了,但如果還想在映像檔中加入其他元件,則可以利用PEImg.exe這個指令儲存來添加設備的驅動程式,或是以WinREConfig.XML檔新增客製化修復工具。至於要在Vista啟動失敗時,讓系統自動進入WinRE環境,還必須複製winre.wim及winpeshl.ini這2個檔案到先前選定的磁碟分割中,並利用WAIK的SetAutoFailover.cmd指令來設定。

完成上述準備工作後,在Vista開機時按下F8進入進階開機選單,可以發現多了一項「修復您的電腦」,點選後就能進入WinRE環境。而如果在原本的Vista作業系統已經無法開機的情況下,則會自動進入選單畫面,這時像是安全模式或偵錯模式等選項都會消失,只剩下「啟動【啟動修復】」與「正常啟動Windows」可供選擇。

WinRE包含啟動修復、系統還原、Windows Complete PC還原、Windows記憶體診斷工具,以及命令提示字元等,在一般情況下,使用者可以自行選擇想要使用的功能,但如果作業系統已經損毀,則會強制進入啟動修復,並自動診斷造成無法開機的原因。

為了驗證WinRE的功能,我們在Vista中將正體中文語系的登錄機碼移除,以便製造開機程序錯誤,如此一來,當電腦重新啟動時,由於系統無法載入語言檔而呈現藍底白字的故障畫面,這時只要進入WinRE,啟動修復便會自動執行。等到啟動修復的掃描功能完成後,如果我們選擇自動修復,系統會試圖排除錯誤並重新開機,不過在這個例子中,自動修復的功能並無法奏效,所以WinRE便建議使用系統還原來修正這項錯誤。然而,當我們將Bootmgr重新命名,造成開機時的Bootmgr遺失,WinRE就能自動修復這種類型的錯誤。

 

如何操作WinRE的功能

WinRE提供自動檢修、系統還原、記憶體診斷和命令提示字元等功能,還原時可以選擇僅還原作業系統所在的磁碟分割,或是電腦的所有磁碟資料。

 

當系統無法正常開機時,進入WinRE 後便會進入自動修復檢測程序,雖然說明文字顯示可能需要一小時以上,但我們實際測試時僅用不到半小時,即完成檢測。

 

在預設情況下, Windows Vista 的進階開機選單並沒有包含WinRE ,等到用WAIK 將WinRE 安裝至硬碟,之後開機時才會出現「修復您的電腦」選項。

 

無論修復成功或失敗,WinRE都會提供完整的修復報告,內容包含上次成功開機的時間、嘗試修復次數、錯誤發生的可能原因,以及各項檢測花費的時間等。

 

在Vista環境下從硬碟啟動WinRE的步驟

1. 下載並安裝WAIK,再以管理員身分執行「Windows PE工具命令提示字元」。

2. 輸入指令copype.cmd x86 E:\winre,在E磁碟建立WinRE的資料夾,其中x86可換成amd64或ia64,E可換成任何非開機系統所在的磁碟機代號

3. 將Vista安裝光碟放入光碟機。

4. 將boot.wim複製到winre資料夾,執行imagex.exe /export /book D:\sources\boot.wim 2 E:\winre\winre.wim “WinRE”。其中D:為光碟機磁碟代號,2為wim檔的磁碟區編號。

5. 掛載winre.wim檔。鍵入指令imagex.exe /mountrw E:\winre\winre.wim 1E:\winre\mount

6. 以純文字文件建立winpeshl.ini,並將內容編輯為: [LaunchApp]AppPath=X:\sources\recovery\recenv.exe

7. 利用PEImg.exe或WinREVonfig.XML,以便加入第三方驅動程式或軟體工具。(此步驟可略過)

8. 將winpeshl.ini複製到WinRE的Windows\System32資料夾。

9. 將winre.wim及boot.sdi(位於WAIK的boot資料夾下)複製到E:\。

10. 進入recovery資料夾,輸入cd C:\Program Files\Windows AIK\Recovery。

11. 執行SetAutoFailover.cmd /target E: /wim /nohide即可。

 


熱門新聞

Advertisement