什麼是 BartPE (Bart Preinstalled Environment) ?
它可以幫助你建置一個「個人」預先安裝系統的環境,BartPE 也很適合當作維護系統的工具。(這篇文章是舊事重提,不是什麼新技術了,純綷複習順道看看官方有什麼新玩意兒。)
它是利用 Windows XP 或 Windows Server 2003 的安裝光碟,截取出核心檔案,然後加以封裝成為一個開機系統,這個開機就可執行的系統的長像就是windows的畫面,想像一下,很早期在做系統維護的時候,ghost 必須在dos介面下操作,相較於早期的dos安裝環境,windows下操作ghost,圖形化的介面會讓你更上手些;好處當然不只這個,有些硬體的驅動並沒有辦法在dos情況下載入(這個狀況現在很少了,主機板這部分的支援度改善非常多),那麼在ghost的時候會出現找不到硬體的窘境…若是在載入windows環境後,那麼硬體的支援性會比較好一些。
BartPE 預先載入的環境可以是xp或是2003 (32位元),同時支援網路連線、解析度到 800*600,除此之外還有一些附屬的工具,如磁碟備份、掃毒…等等的修復工具…所以BartPE 是可以取代 dos安裝環境的。
特別注意的地方是,BartPE 不是微軟體產品,他也不是衍生自微軟開發的「Windows PE (Microsoft Windows Preinstallation Environment) 」,這二者間有什麼不同:
- 用過Windows PE應該知道,他只是有類似xp畫面的空殼,裡頭要執行程式還是得靠打指令;BartPE 則是和xp一樣,程式都是圖形操作介面( GUI )。
- Windows PE 定位在 OEM 做程式大量部署的平台;BartPE 則以成為新一代系統救援工具為開發願景。
- Windows PE 僅提供給OEM 使用;BartPE 則為人人可使用的免費系統。
除了上述的差別外,BartPE 在功能的特點還有「支援自行添加軟體」「提供自製的Nu2Menu,讓你客製化開始選單」「支援網路連線」「支援檔案分享」「提供自製的pedos,可執行dos指令」
如果你有興趣的話,建議去官網一探究竟 http://www.nu2.nu/pebuilder/
dnowba底下只概述怎麼製作 BartPE ,需要使用的是官方提供的 PE Builder 這個工具怎麼使用,如果你是一般家用者,應該是不需要學這種東西,PE 版本的功能,對於家用者來說就是 救援 / 備份 系統,所以直接找現成的 PE 版就可以了(甚至是別人ghost 起來的系統都可以)。這篇文章比較偏向一般公司機關的系統管理者,怎麼做自已的大量部署的PE光碟,讓你在安裝客戶的系統時能客製作且節省安裝時間。
(後記:我發現要完成這麼大的專題,好像要花不少的時間…這邊只能說是個補個網路上比較少見的入門文件…如果有興趣的話自個再爬爬進階文章)
需要的物品:
- PE Builder :下載頁 http://www.nu2.nu/pebuilder/#download,執行工具的環境為 Windows 2000/XP/2003/BartPE
- 可燒錄的光碟機和 Windows 光碟:支援的Windows 版本為 XP (Home Edition SP1 以上 / Professional SP1 以上) 或是 Server 2003 (Web Edition/Standard Edition/Enterprise Edition)
- 500 MB 的磁碟空間
開始用 PE Builder 製作 BartPE :
- 放入Windows 安裝光碟後執行 PE Builder ,選擇來源(Source)為光碟機,並指定輸出位置 (OutPut )。最後選擇媒體型式可為純資料夾或包成一個映像檔,甚至是直接燒成光碟。最後按下「Build」就開始建立檔案。
- 建立前會讀一下 i386 的軟體授權條款。按下我同意。
- 開始壓縮解出所需要的檔案。最後顯示裝置
封裝起來的BartPE 無法使用???
- 在防毒軟體上關閉偵測 BartPE 的資料夾,防毒軟體通常會把它當作病毒。
- PE Builder 可以在 XP/2003 系統上執行,DNOWBA試過在WIN7執行是沒什麼「太大」的問題,不過在使用前,建議在執行檔上設定 「以相容模式 Windows XP (Service Pack3) 」上執行這個程式,並且「以系統管理員的身分執行此程式」
- 你的 XP 安裝光碟必須是SP1 以上 … 怎麼確定你的安裝光碟是不是含修補程式包,可以看一下光碟裡 File \i386\drvindex.inf 這個檔案,裡面Version字節如果是下圖而不是CabFiles=SP1 或是CabFiles=SP2 …那表示版本就不合 ,在使用 PE Builder 導出檔案時就會發生錯誤。
使用 PE Builder 建置的時候應該會有類似以下的錯誤訊息:
Source files wrong version? File version <path>\i386\ntdll.dll is 5.1.2600.0 should be 5.1.2600.1106 or higher. - 你的 XP with SP1 /SP2 /SP3 可能被「精簡」過頭了,在使用 PE Builder 生成 BartPE 時可以看一下建置後結果,error的地方如果是 xxxx.sys not found …那在BartPE 開機也同樣會顯示相同錯誤,一般的 OEM 版本
(Windows XP OEM CDs) 也會有這種問題 (OEM沒事包別家的SYS要幹嘛,所以他們會精簡),所以建置BartPE最好使用「 零售版」,只要是零售版都含有這些檔案。 - 成功執行的畫面…
- 直接用 PE Builder 預設的環境來製作光碟,CD 開完機,會發現有很多傷腦筋的事情,比方說開始選單…是「GO」…;所有中文顯示都變成一些小方塊…。這些都可以使用 PE Builder Plugin 來改善,所謂 Plugin ,就是 NU2 外第三方所開發的插件…這種第三方插件可以說是一自製化 live cd 的重點,後面會重點介紹一下啟用插件的方式
可以用現有的 C:\Windows 當作 BartPE 的封裝來源嗎?
有些人會覺得 安裝光碟裡的檔案內容 和現有系統內的 C:\Windows 的檔案長得很像,但是在製作光碟開機系統的時候為什麼不能使用,簡單一點的解釋,關鍵在於使用安裝光碟時,會在安裝系統前搜尋你的硬體內容才會執行安裝,這個過程就把一些和你硬體無相關的驅動、安裝文件給剔除掉了,這樣你的系統才不會太肥令人詬病,BartPE 也是需要一樣的功能,想想看,你製作的 BartPE 需求應該是拿著一片光碟,然後走到哪用到哪,不同硬體的電腦都能執行你的 BartPE …那麼前置作業「搜尋並匹配硬體」的過程就不能少…BartPE 需要安裝光碟裡的這些支援…所以製作 BartPE 一定要要安裝光碟,同理,如果你拿ghost版本的XP系統安裝光碟,究其根本,他只能算是「還原光碟」,所以一樣不能用它來封裝成 BartPE 。
可以把 BartPE 放到 USB flash drives (UFD)當作開機碟嗎???
可以的,在使用 PE Builder 建置 BartPE 的時候,不要把它封裝成 ISO 檔,建置在一個資料夾,然後把資料夾內的資料複製到 UFD 上就可以了(當然不是直接複製啦,需要在UFD上做一個BOOT引導文件…),不過能不能正常執行關鍵出在主機板上,主機板對於 USB 開機的支援度不同,不是主機板BIOS裡頭有 USB 的 BOOT 選項,就表示可以正常執行。
上面提到了,要把 BartPE 改成由 UFD 作為開機位置,原因是我不想每回測試、做一次修改都必須燒一張飛盤,而使用UFD開機的方式,也不是單純的複製光碟資料到USB 中就可以解決了,具體的方式比較冗長,請再看DNOWBA的另一篇專文。
可以用 PE Builder 建置 Windows 2000/NT4 /WIN7的BartPE嗎???
WINDOWS 2000/NT4…= = 我開始要猜測一下你出生的年代了…別這麼念舊了,舊的不去新的不來,DNOWBA 在這邊發個XP的古董文自已就在笑了…當然不能支援2000/NT4的原因不是因為刻意的排擠,純綷是因為這些系統的核心和 XP / 2003 不同 ( Framework 的不同) 。至於 Win 7… 當然也不行,不過dnowba這篇文章其實就是為了 win 7 作準備的。如果你也想作一個 win 7 pe版本的話,源頭、技術絕對是來自於xp 的pe…畢竟 xp 的年代久遠,經驗值超高,dnowba 現在要使用 live cd 備援/修復電腦,xp pe的版本絕對依舊是首選,因為目前為止,硬體/軟體相容、支援度在比例上,還是比win 7 pe來得高許多…
怎麼為 BartPE 加入插件???(以中文顯示為例)
首先要找得到第三方提供的中文顯示插件:dnowba 找到一個,請先在此處下載
接著把下載的壓縮檔解壓縮到資料夾中,把整個資料夾放到PE Builder 目錄中的 plugin 資料夾…
再來,開啟PE Builder ,在工具列上選 Builder→Plugins
在Plugins的視窗裡,就可以從插件來源文件 (File的欄位) 找到剛剛加入的插件,找到後啟用,觀察一下,這個中文顯示的插件包含二個文件喔…至於插件裡有什麼用途,這可能要找到釋出該插件的作者,看是不是也同時釋出了說明文件
以這個插件為例,它主要的用途是中文顯示,另外提供中文輸入法(IME)、以及時區顯示,某些插件是可以修改的…像這個plugin就要改一下時區的部分,把時間設為台北時間,可以找到它的 *.inf 檔案,然後加以修改,如以下預設是中國標準時間
把以上幾段改成以下內容就可以正常顯示台北時間了。
; 將 "中國標準時間" 置換成 "台北標準時間" ,改為底下的設定:
; Set timezone to "(GMT+08:00) 台北標準時間..."
0x4,"ControlSet001\Control\TimeZoneInformation","ActiveTimeBias",0xfffffe20
0x4,"ControlSet001\Control\TimeZoneInformation","Bias",0xfffffe20
0x4,"ControlSet001\Control\TimeZoneInformation","DaylightBias",0x0
0x1,"ControlSet001\Control\TimeZoneInformation","DaylightName","台北標準時間"
0x3,"ControlSet001\Control\TimeZoneInformation","DaylightStart",00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
0x4,"ControlSet001\Control\TimeZoneInformation","StandardBias",0x0
0x1,"ControlSet001\Control\TimeZoneInformation","StandardName","台北標準時間"
0x3,"ControlSet001\Control\TimeZoneInformation","StandardStart",00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
後記…台灣有名的Noname XPE 其實源頭就是利用 BartPE 再補上插件而成…當然作者自製的實力不在話下,這種東西要搞到兼容各式各樣的電腦,真的要費很多的時間和工夫,dnowba 沒這種實力 !!! 所以我只能用人家的插件,然後看看第三方的文件改改而已…
因為BartPE 行之有年了…所以這種插件還蠻好找的,如果你需要其他的插件,DNOWBA 這邊大概整理了一些發個文章,有需要請參考
以dnowba的能力…我只能找別人做好的…如果你是pro級,對windows瞭若指掌的話, PE Builder 有提供供開發插件的技術文件可供你參考的…
http://www.nu2.nu/pebuilder/help/english/pluginformat.htm
怎麼添加硬體驅動???
如我們所知,Windows 已經自帶了一個驅動包,所以在安裝時,大部分的硬體都可以在系統完成後順利被驅動使用,但不怕一萬只怕萬一。如果碰到了驅動不起來的硬體。那就要自已加入相關文件了。
其他小技巧:
BartPE 的用途在於救援,備份、還原系統、甚至是快速安裝部署多台電腦。所以載入的時間愈快愈好,如果說你使用的是原廠的光碟,那麼封裝的檔案大小可能還不見得精簡,但要學習把系統精簡又是另一門課,所以我建議初學者可以用正式零售版做練習…如果你使用過了 Noname XPE ,或是想自製 WIN 7 PE…那這篇文章絕對是入門的好文件
如果你要更加了解 Bart PE…衷心建議,去官網看看吧
http://www.nu2.nu/pebuilder/
謝謝你 ... 我終於解決了亂碼的問題 !!!
回覆刪除無限感激....
不過, 不知 "怎麼添加硬體驅動???"
回覆刪除我要在綱上再找找 ....
自行添加硬體驅動是一個很專業的部分
刪除一般來說是不需要加
像顯示卡的硬體還是可以被windows以最簡單的模式驅動起來
(簡單的說就是可以顯示,但不能發揮顯示卡其他特製功能)
像網路卡,一般集成機驅動也都不用另外安裝
(因為windows能包起來的驅動都包起來了…)
光碟機、滑鼠、鍵盤、usb插槽…之類的硬體都是這樣
但是像其他硬體,像讀卡機、印表機、遊戲手把…等等就沒有內建在windows的driver裡
不知道你做BartPE的目的是什麼?
如果是單純的救援機制…印表機那類的應當是不用驅動起來的
有問題歡迎再發問吧
先 謝謝 你的回覆.
刪除我主要是救機用的. 但是運行 BartPE 後, 不能上網, 因此不能下載最新的病毒定義. 我想是網路卡的驅動程式的問題.
包網卡驅動我以前做過,還蠻簡單的
刪除給你個程序…
假設你現在的電腦還活著
你的網卡插在主機板上而且已驅動(可上網)
那你就可以用軟體「DriverBackup」
把驅動程式的關鍵檔案(*.inf、*.sys)
從作業系統(放driver的資料夾)裡面抽出來
接者把WinPE.WIM 掛載後
把這二個檔案放到相對位置去
這部分完成只是可以在BartPE啟動
「手動」添加硬體驅動時找得到對應的driver
若是要能啟動bartpe時能「自動」加載驅動
請先找到bartPE裡的PE_OUTERPART目錄
裡面有四個*.cab,分別是音效卡、顯示卡、網卡、無線網卡的自動驅動包
你把你剛備份下來的該張網卡關鍵檔案用一個資料夾包起來
再放到網卡的cab裡
bartpe會在啟動時(透過INFCACHEBUILD.EXE應用程序)自已去加載這四個cab裡的驅動
這樣應該就可以了
不過我想提醒你,我以前很少會碰到網卡搞不起來的,很有可能是你的來源光碟(xp版本)是精簡過的版本…(不過也不大可能,大部分的精簡不大會去砍網卡驅動捏…)
好啦,這門技術是內功心法,學會了可以通透很多技術(像無硬碟系統、網咖三層式更新技術)等等…很有研究價值,但是在硬體驅動和軟體免安裝這二塊是很吃力的部分
加油啦…小弟最近在搞一些教學文件,就不捨命陪君子了
謝謝你 ... 很詳細呵 ... 謝謝 !!!
刪除回覆的很快哦 ... 感激萬分.
我想我已掌握了其中秘訣, 我會依樣葫蘆.
再次在此拜謝 !!!
報告, 我成功了 !!
刪除我依你的提示, 將我的電腦裏 XP 的 Lan 驅動器 (*.INF, *.SYS)抽出.
不過可能我用的 PEBuilder 比較新版 (3.1.10a), 沒有 PE_OUTERPART 目錄, 只有一個 drivers\net 資料夾, 試着將它們放進去, PEBuilder 就會自動在 BartPE 中掛進 Lan 驅動器, 非常簡單.
我再在網上找到一個檔案包含各種不同的 Lan 驅動器, 一併將它們抄進 drivers\net 中, 這樣的 BartPE 就可以在不同的機器中上網了。
我終於成功了, 謝謝你了 !!!