天天看點

實作winpe迷你系統和linux系統多重新開機動

一直以來,安裝、維護系統,比較常用的都是使用CD光牒。但最近越來越覺得CD光牒随身攜帶麻煩,而且容易失效。一張CD光牒上的系統往往沒到兩年就被淘汰了。 是以,萌生了使用優盤進行系統維護的想法。既然是用于維護的,winpe自然不可少,但個人覺得Linux也不可或缺。一來,Linux也需要維護,二 來,Linux還可以提供WinPE很多不具備的功能。兩者互為補充,效果應該更好。是以,用于維護的優盤能支援多系統的啟動也是必要的。

首先需要選擇WinPE和Linux的版本。WinPE的版本衆多,我使用的是天意的系列WinPE(前身即為完美者WinPE)。這個系列功能齊 全,驅動完整(具體功能可以參見這個網址),還有一點是除了啟動檔案,WinPE系統本身和外置程式都封裝在了ISO檔案中,便于安放,不會在優盤上産生 一大堆的檔案。截止寫本文時,最新的發行版是1.5版本,大家可以去這個位址下 載。至于Linux發行版的選擇,同樣令人眼花缭亂。個人覺得Ubuntu比較适合初級使用者,驅動完整,支援良好,各種社群和文檔也比較完善。本文使用的 是Ubuntu 11.04的桌面線x64版本。當然,如果你有自己的選擇也可以啦,各個Linux發行版都是大同小異,安裝到優盤的過程也很類似,隻是 可能不能完全依照本教程,而要自己動手實踐了。

我們大緻的思想是,使用grub4dos啟 動計算機,然後再利用grub4dos的引導功能 去啟動我們所需要的WinPE或者Linux。第一步,把優盤格式化,推薦使用ntfs檔案系統。然後,我們要使優盤變成可啟動的。grub4dos是一 個類似于grub的啟動器,功能強大。我們可以在此處進行下載下傳,我選擇的是0.4.4版本。下載下傳後,解壓到任意位置,進入一個Linux系統,打開一個終 端并進入解壓後的那個檔案夾。運作以下指令(以#開頭的為注釋,不是指令):

1# 檢視自己的優盤的裝置名稱,例如sda、sdb等等。注意不要和硬碟等的裝置名搞混了,可以通過容量和分區的數目辨識 2sudo fdisk -l 3# 将啟動資訊寫入優盤,其中sdx替換為你上一步中找出的自己的優盤的裝置名稱 4chmod a+x bootlace.com && ./bootlace.com /dev/sdx

完成後,我們再把grldr檔案放入優盤的根目錄并在優盤根目錄下建立一個名為menu.lst的檔案。打開這個menu.lst檔案,輸入以下兩行内容: 

1timeout 30 2default 0

至此,我們的優盤就是可啟動的啦。

下面,我們要添加WinPE 。這裡先說說WinPE 1.x版本(也就是我們通常所見到的基于WinXP的PE)的啟動過程。不同的啟動方法具體情況有所不同,但基本可以歸納為:

  • 最初的啟動(不同的啟動方法有所不同)
  • 加載SETUPLDR.BIN 
  • 依據SETUPLDR.BIN中訓示的位置,加載NTDETECT.COM和WINNT.XPE
  • 依據WINNT.XPE訓示的位置加載WinPE的基礎系統
  • 加載外置程式

我們可以直接訓示grub4dos加載SETUPLDR.BIN,隻需要在menu.lst中添加如下幾行即可:

1title Windows PE Environment 2find --set-root /tool/pe/setup 3chainloader /tool/pe/setup

接 下來,我們就要修改SETUPLDR.BIN了。解壓我們下載下傳的天意PE的ISO檔案。找到boot目錄下的SETUPLDR.BIN。在優盤根目錄下新 建一個tool目錄,再在tool目錄中建立一個pe目錄,将SETUPLDR.BIN放到pe目錄中并重命名為setup。這樣組織檔案的話,最後在優 盤目錄下就隻有tool目錄以及grldr和.lst兩個檔案,幹淨整潔,友善放其他的資料檔案。而tool目錄專門放各種維護工具,每種工具為一個檔案 夾,像所有有關WinPE的檔案就都在pe子目錄下。

用16進制編輯器(如HxD、WinHEX等等)打開setup檔案。定位到3E188位置,注意到兩個“bootntdetec”了嗎?這就是USB啟動模式下指定NTDETECT.COM位置的字串。将它們修改為“toolpentde”。如下2圖所示:

實作winpe迷你系統和linux系統多重新開機動

修改前 

實作winpe迷你系統和linux系統多重新開機動

修改後

接 着,我們要替換WINNT.XPE的位置。在天意PE中,WINNT.XPE實際為boot目錄下的type檔案,将這個檔案放到優盤toolpe目錄 下,重命名為x。接着,回到setup檔案中,替換所有的“boottype”為“toolpex”。聰明的人應該注意到了,隻要保證更換後的字串和更換 前的字串的長度相同,NTDETECT.COM和WINNT.XPE的名字和位置其實是可以改變的。接着,拷貝天意PE的boot目錄下的FON.BIN 到優盤toolpe目錄下并重命名為font,這是啟動時的中文支援檔案,沒有它雖然不影響啟動,但啟動時就不能顯示中文了。我們也需要在setup中更 改這個字型檔案的路徑,将所有的“bootfon.bin”更改為“toolpefont”即可。至此,SETUPLDR.BIN的修改工作完成。

下 面,我們修改WINNT.XPE檔案,指定WinPE的基礎系統的檔案位置。打開優盤中toolpe目錄下的x檔案,将rdpath後面的路徑由 “typetype.is_”改為“toolpetype.is_”。再把天意PE系統type檔案夾裡面的type.is_和type.isz拷貝到優 盤中toolpe目錄下。到這裡,我們優盤裡面的WinPE就可以順利啟動了。但它還是無法順利的加載天意PE中内置的各個實用的工具。要完成這最後一 步,我們找到優盤toolpe檔案夾中的type.is_,用WinRAR解壓,得到一個type.iso檔案。修改這個iso檔案(可以用 UltraISO這 個軟體)内部的WXPESYSTEM32檔案夾下面的STARTPE.CMD檔案,将“typetype”修改為 “toolpetype”,一共有三處。修改完成後,将這個新的iso檔案重命名為type.is_并覆寫優盤toolpe目錄下原有的type.is_ 檔案。

到這裡WinPE系統在我們的優盤上就順利安家啦,大家可以重新開機試試看。

接下來,我們要為優盤添加Ubuntu系統, 這個過程比添加WinPE簡單多了。首先下載下傳你想要的Ubuntu版本,我下的是ubuntu-11.04-desktop-amd64.iso。将其拷 貝到優盤的toolubuntu目錄下面。然後再打開優盤根目錄下的menu.lst檔案并添加以下内容(大家注意依照自己下載下傳的Ubuntu版本不同修 改檔案名):

1title Ubuntu 11.04 Desktop x64 (sudo umount -l /isodevice) 2find --set-root /tool/ubuntu/ubuntu-11.04-desktop-amd64.iso 3map /tool/ubuntu/ubuntu-11.04-desktop-amd64.iso (0xff) || map --mem /tool/ubuntu/ubuntu-11.04-desktop-amd64.iso (0xff) 4map --hook 5root (0xff) 6kernel /casper/vmlinuz  file=/cdrom/preseed/ubuntu.seed boot=casper noprompt nopersistent iso-scan/filename=/tool/ubuntu/ubuntu-11.04-desktop-amd64.iso -- 7initrd /casper/initrd.lz

至此,雙啟動優盤就完全制作好了。其實,有了grub4dos這個強大的啟動器,我們還可以添加許多其他的系統和功能,比如: 

  • Win7 PE(即WinPE 3.x版本),基于Win7核心的PE,現在雖然還不成熟,功能也沒WinXP PE強大,但将來肯定會漸漸流行的
  • Puppy Linux,比Ubuntu更小巧,僅有100+MB,功能比較齊全,多媒體播放功能比Ubuntu預設情況下強,不過驅動沒有Ubuntu自帶的多而且沒有自帶編譯器和網際網路浏覽器(但是可以線上添加)
  • BackTrack Linux,專門給Hacker用的Linux,自帶了很多安全工具,最新版為Backtrack 5,如果要用的話推薦用32位的GNOME版,64位和KDE版本好像相容性都有點問題
  • memtest,用于測試記憶體的小工具 

限于時間和篇幅,以上系統和功能的添加就不再詳談了,但原理都是相同的,大家多動手、好好利用搜尋引擎,應該都可以搞定的。 

來自:http://www.upan.cc/boot/dos/2948.html