|
![]() |
★★微軟封裝工具 ImageX 的應用與常用命令參數★★ | 【回教學首頁】 |
微軟封裝工具ImageX的應用! 本文中我們將會介紹imagex的幾個基本應用:映射建立、映射壓縮、映射檔拆分以及應用映射。 本文的所有操作都需要在Windows PE下進行。雖然這可能沒有在DOS環境下方便,不過用Windows PE取代DOS已經是一個必然的趨勢,同時,Windows PE環境也使imagex的適用範圍更廣。 我們都知道,傳統的基於磁盤扇區的映射工具一般只能在Windows操作系統之外運行,因此都使用了專用的恢複環境,例如軟件開發商提供的特殊版本的 DOS。但這就存在一個問題,主要是關於存儲子系統的。現在我們使用的存儲子系統規格越來越多,除了傳統的 IDE,常見的還有SCSI、SATA,以及各種級別的RAID等,如何讓映射工具支援這些不常用的存儲子系統成了一個最大的問題。 以使用DOS作為恢複環境的映射工具為例,如果該工具沒有自帶用於RAID系統的DOS驅動程式,那麼就無法使用它對RAID系統建立和恢複映射。但 imagex解決了這一問題,它的恢複環境是Windows PE,這可以看作是一個省略了圖形介面的Windows內核,因此任何磁盤子系統,只要提供了Windows下的驅動程式,就可以用於Windows PE。 使用過程中大家可能會注意到,用Windows PE光盤引導電腦,進入Windows PE環境之前,螢幕上首先會顯示“Press F6 to Install…”的字樣,這和我們直接用光盤安裝Windows操作系統時的選項類似。如果您使用了一些比較不常用的存儲子系統,例如SCSI或者 RAID,就需要在這個介面上按下F6,然後提供所需的驅動程式,這樣引導後Windows PE才可以識別出您的硬盤。 下文中,實驗所用系統的設置如下:C盤安裝操作系統,D盤是光驅,E盤用於保存建立的映射檔。不過當我們用Windows PE光盤引導電腦後情況有所變化,C盤依然是系統盤,但光驅成了X盤,Windows下的E盤成了Windows PE環境下的D盤。因此為了避免混淆,在Windows PE環境下的操作將會使用PE中的盤符名稱,但在Windows環境下的操作將會使用Windows中的盤符。 建立映射 首先我們需要准備一台範本電腦,在這台電腦上安裝打算批量部署的操作系統,並安裝所有需要的驅動程式、應用軟件、系統更新程式,同時我們還可以根據實際需要對系統和程式的各種選項進行設置。設置完成之後運行sysprep.exe刪除所有不必要的資訊 ,並關閉電腦。 進行到這一步的時候,和使用傳統的基於分區的影響工具部署都沒有太大區別,不過接下來我們要使用微軟自己的映射工具了。 假設我們希望使用默認設置建立一個C盤的映射,映射檔將以data.wim為名保存在D盤根目錄下,並在建立完成後進行數據校驗,那麼我們可以使用這樣一個命令: imagex /capture c: d:\data.wim "Drive C " /verify “/capture”參數的作用是建立映射檔,而該參數後面的“c:”則指定了要建立映射的目標分區。“d:\data.wim”這個參數指定了鏡像檔的保存位置以及名稱,“Drive C”參數定義了映射檔的描述,需要用引號引用。最後的“/verify”參數則會讓imagex建立完映射之後進行校驗。當看到圖1所示的介面時,表示我們的命令是正確的,程式正在 建立C盤的映射。當螢幕顯示“Successfully imaged c:\”的字樣時表示映射已經建立完成了。 這時候我們就可以將建立出來的data.wim檔保存起來,並用於之後的部署了。這裏還有一個有趣的功能需要提醒您:imagex可以將建立出來的映射檔保存在預 建立映射的分區上。例如本例中,我們就完全可以將data.wim保存在C盤,這其實是基於檔的映射工具和基於扇區的映射工具的最大不同。 壓縮映射 當然,imagex能做到的還有很多。有時我們可能會希望盡量減小生成的映射檔的體積,這時候就可以用到imagex的壓縮功能了。壓縮參數有兩個選項:Fast和Maximum,其中後者的壓縮率更高一些,當然花費的時間也要長一些。還是上面的例子,如果需要以Maximum等級壓縮 建立出來的映射檔,可以使用這條命令: imagex /compress maximum /capture c: d:\data2.wim “Drive C” /verify 遺憾的是該參數只能在建立映射檔的時候使用,對於已經建立好的映射檔,已經無法通過該參數進行壓縮,或者更改壓縮等級了。 拆分映射 如果您希望將建立出來的映射檔按照一定大小拆分,以便刻錄到光盤或者保存到其他可以動存儲介質上,那麼可以使用imagex的“/split”參數。例如,如果我們希望將之前 建立的data.wim檔以640 MB為大小拆分,以便刻錄到CD光盤上,那麼可以使用這條命令: imagex /split d:\data.wim d:\datasplited.swm 640 該操作將會建立一系列帶有固定編號的.swm檔,例如我們要拆分的檔是data.wim,那麼拆分後的檔就是data1.swm、 data2.swm等。該參數同樣有些不足:首先,無法在建立映射檔的時候使用,只能在映射檔建立成功之後使用。另外,拆分的檔大小是以MB為單位指定的,如果我們需要以GB為單位元拆分檔以便刻錄DVD光盤上,顯得不夠靈活。 應用映射 我們已經建立好了系統映射檔,日後如果需要在多台電腦上部署,或者某台電腦的系統崩潰,就可以使用建立好的映射檔來恢複。恢複過程是非常簡單的,依然需要進入到Windows PE環境下,然後使用“/apply”參數運行imagex.exe程式即可。 對於新電腦有一點需要注意,在使用imagex安裝操作系統映射之前,必須首先給硬盤分好區。您可以使用Windows PE自帶的分區工具diskpart.exe進行。而如果您嫌麻煩,或者需要處理的 電腦太多,也可以自己編寫腳本,讓Windows PE啟動後自動進行分區操作。 假設我們要把之前建立的保存在D盤的data.wim檔重新恢複到C盤,那麼可以首先格式化C盤,然後使用這條命令: imagex /apply d:\data.wim 1 c: /verify 這裏要注意映射名稱後面的編號“1”,下文中我們將會介紹,imagex可以把多個鏡像檔附加到同一個映射中,那麼在使用某個特定鏡像部署系統,或者執行其他類似操作的時候,怎樣從附加了多個鏡像的映射檔中指定特定鏡像呢?這裏就需要使用編號了,如果希望對第幾個鏡像進行操作,在映射檔案名稱後添加該鏡像的編號即可。 高級應用 除了上面介紹的功能,imagex還有很多功能可以適合不同情況。同樣,下文將會通過幾個具體的實例向您介紹。 檔附加 有時我們可能會遇到這樣的情況:當我們安裝好操作系統之後,需要建立一個映射檔;而安裝完補丁程式以及驅動程式之後,需要建立另外一個映射;等安裝完所有其他需要的應用程式,並進行過必要的設置之後,還需要 建立第三個映射檔。這樣的要求有一個特點,那就是三個映射檔中大部分數據都是相同的,而每次都是只有部分檔被增刪或者更改。那麼按照一般的做法,直接 建立三個各自獨立的映射檔,無疑浪費了大量的存儲空間,而且映射檔太多也不利於日後的管理。 為瞭解決這個問題,imagex中包含了一個叫做附加的功能。簡單來說,該功能可以在一個映射檔中保存多個不同狀態下的操作系統鏡像。例如之前設想的情況,將操作系統在三個時候的不同狀態全部附加到同一個映射檔中,這樣,因為操作系統中有大量三個狀態下沒有發生任何更改的檔,因此這些檔實際上在映射檔中只需要保存一個實例,這就可以在壓縮的基礎上更進一步減小映射檔的體積。 注意,這裏提到了兩個名詞:“映射”和“鏡像”。為了方便敘述,下文對這兩個名詞的定義如下:對操作系統所在分區進行“複制”建立的文件稱之為“鏡像”,而多個“鏡像”附加在一起即形成一個“映射”。 在上文的操作中我們已經對整個系統盤建立了一個完整映射data.wim,假設當時我們只是安裝了操作系統,還沒有裝驅動和應用程式,那麼現在我們可以啟動到正常Windwos狀態下,按照需要安裝所有的驅動和程式,然後重啟動 電腦到Windows PE環境(別忘了運行sysprep.exe)。要建立新的鏡像,並附加到現有的映射檔中,可以使用下列命令: imagex /append c: d:\data.wim “Drive C 2” /verify。 “/append”的作用是將目標分區附加到現有檔,需要注意,如果已經使用了“/append”參數,就不需要同時使用“/capture”了。而後面的“d:\data.wim”則指定了要被附加的檔所在位置和名稱。 注意,如果被附加的源映射檔被壓縮過,那麼附加上去的鏡像檔就必須進行同樣等級的壓縮。 配置檔 imagex的某些選項可以由配置檔指定,這樣我們就可以預先編寫好配置檔,然後一次執行,實現比較複雜的操作。要指定配置檔,需要以“/config”參數啟動imagex。配置檔中主要有三個欄位,各自的含義如下。 [ExclusionList] 定義了使用“/capture”參數後被排除的檔和文件夾名稱 [CompressionExclusionList] 定義了不被壓縮的檔或檔夾名稱,或者檔類型。這裏可以使用通配符 [AlignmentList] 指定檔以64K為範圍排列,這些文件將不會被壓縮,而壓縮後的文件將會以32K為範圍排列。 我們只需要在文本編輯器,例如Windows記事本中按照上述規定的欄位編寫內容,然後將文件保存為.ini格式,就可以在使用imagex.exe的時候通過“/config”參數調用了。 打開Windows記事本或者其他任何文本編輯器,分別輸入[ExclusionList]、[CompressionExclusionList]和[AlignmentList]三個欄位,然後按照需要為這三個欄位設定內容。 例如,如果我們希望在建立映射檔的時候跳過分頁檔和休眠檔,那麼就可以在[ExclusionList]欄位下添加這兩個文件的名稱: “Hiberfil.sys”和“Pagefile.sys”。注意,每個文件要佔用一行空間。如果我們希望在壓縮檔的時候取消對所有擴展名為.zip 的檔的壓縮(畢竟它們已經被壓縮過了,再次壓縮只能延長所需時間,體積的變化不會太明顯),那麼可以在 [CompressionExclusionList]欄位下添加“*.zip”這一行內容。 注意:通常情況下,如果要使用配置檔,那麼就必須在運行imagex命令的時候使用/config參數,並指定配置檔的位置。但如果我們預先將配置檔以wimscript.ini為名保存在imagex.exe檔所在的檔夾下,那麼以後運行的時候只要使用了“/capture”參數,該配置檔就會被自動加載,而不管我們有沒有配合“/config”參數一起使用。 映射檔的維護 我們已經瞭解了如何建立和應用映射檔,那麼日常維護方面,這種新的檔格式又能帶給我們什麼?需要注意,之前介紹的所有操作都是使用imagex在Windows PE的命令行環境下運行,而接下來要介紹的一些功能在正常的Windows模式下就可以操作。 查看映射檔資訊 我們首先繼續討論一下前文中存在的一個問題,對於附加了多個鏡像的映射檔,可以通過添加編號的方式指定對哪個鏡像進行操作。但是一旦時間長了,我們如何知道某個映射文件中有幾個鏡像,分別是什麼內容?這就要用到imagex的另一個參數“/info”了。 還是以上文建立的附加了多個鏡像的映射檔data.wim為例,在Windows PE環境下,運行這樣的命令:imagex /info d:\data.wim,我們可以看到,程式會自動顯示一個以XML格式保存的檔,檔的內容就是該映射檔中所有附加的鏡像檔的資訊(圖3)。這裏面大家可以留意看“”這一欄位的內容,這其實就是我們在使用 “/capture”參數建立映射時輸入的描述。因此在使用的時候要注意輸入詳細的描述資訊,方便日後的使用。 查看映射文件內容 隨著使用時間的延長,管理員們可能需要管理越來越多各種用途的映射文件。如何快速從多個映射文件中找到自己的目標就顯得非常重要。通過使用imagex的 “/dir”參數,我們就可以直接把某個映射檔,甚至具體到其中附加的某個鏡像的內容顯示出來。該參數的使用方法是這樣的:imagex /dir d:\data.wim 1。 首先讓我們試試看使用“/dir”參數列出映射檔中具體某個鏡像的內容。回到Windows正常狀態下(注意,這一步操作不能在Windows PE環境下進行,必須回到Windows下),然後運行下列命令: imagex /dir d:\data.wim 1 這將顯示data.wim這個映射檔中包含的鏡像內容(如果映射檔中包含了多個鏡像,也可以通過編號指定具體鏡像)。這裏顯示的內容非常多,查看起來很不方便,那麼我們就可以使用這樣的命令: imagex /dir d:\data.wim 1 >d:\list.txt 該命令可以將顯示的內容全部輸出到D盤一個名為list.txt的文字檔案中,使用文本編輯器查看和搜索具體檔就相當簡單了。 這裏有個問題需要注意,就算您的映射檔中只包含了一個鏡像,在使用/dir參數的時候依然需要在檔案名後面指定鏡像編號,否則將無法列出其中的內容。暫時不清楚這是設計特性還是軟件的Bug。 將映射檔內容映射為檔夾 除了使用“/dir”參數列出映射檔的概括內容,我們還可以使用“/mount”參數和“/unmount”參數將映射檔中具體的鏡像映射為本地硬盤上的檔夾,並編輯其中的內容。“/mount”參數有兩個,分別是“/mount”和“/mountrw”,其中前者可以將鏡像映射為只讀檔夾,而後者可以將鏡像映射為可讀寫檔夾。 要注意,這兩個命令都只能在Windows XP SP2、Windows Server 2003 SP1以及Windows Vista中使用。同時在映射之前,還要安裝WIM FS插件,該插件在WAKI工具包中提供。 安裝好插件之後,在命令提示行視窗內運行下列命令: imagex /mountrw e:\c e:\data.wim 1 “e:\c”的含義是將鏡像映射到E盤下一個名為“c”的文件夾中。如果該檔夾內當前有檔,那麼在被映射的鏡像卸載之前,原先的內容將無法訪問。映射了鏡像之後,我們就可以使用Windows資源管理器打開映射出來的文件夾,查看其中的內容,添加或者刪除檔,或者像在操作本地硬盤那樣進行其他操作。 因為我們之前使用的參數是“/mountrw”,這樣映射出來的檔是可寫的,因此當用完之後,為了使對檔的更改能夠生效,我們需要使用 “/unmount”參數配合“/commit”選項,合並對映射檔的修改,並將其卸載。可以用這樣的命令:imagex /unmount /commit e:\c。 鏡像的提取和刪除 有時候您可能會遇到這樣的情況:一個映射檔中附加了很多不同環境的鏡像檔,可其中一個鏡像檔已經沒用了。為了減少存儲空間的佔用,您可能希望刪除不用的鏡像檔。同時,您可能還會有這樣的需求:想要將附加到一個映射文件中的獨立鏡像提取出來,做其他用途。這些任務依然可以通過imagex的參數實現(本段內容需要在Windows PE環境下操作)。 要刪除映射檔中附加的鏡像,我們可以使用“/delete”參數,例如:imagex /delete d:\data.wim 1。如果希望將映射檔中的某個鏡像提取出來,可以使用“/export”參數,例如:imagex /export d:\new.wim d:\data.wim 1。 注意,在提取鏡像的時候一定要保證目標映射檔的所在分區具有足夠的可用空間。如果可用空間不足,程式不會報錯,依然會生成新的映射檔,但是檔本身是不完整的。 imagex.exe的不足 雖然優勢很多,不過目前imagex.exe還有很多不足,主要表現在: imagex只能用於對完整的操作系統以及應用程式建立和應用映射。有些第三方的映射工具可以在操作系統和應用程式發生改變後對其建立“差異映射”,這個imagex.exe是做不到的。 imagex只能建立和使用.wim(Windows Imaging)格式的映射檔,不支援使用其他第三方工具建立的映射。 對於同一個映射檔只能使用一種壓縮等級,隨後附加的鏡像檔也必須使用和初始映射檔一樣的壓縮等級。 映射檔的映射只能在Windows XP SP2、Windows Server 2003 SP1或者Windows Vista下進行。但是imagex可以對沒有安裝Service Pack的Windows XP和Windows Server 2003,以及任何版本的Windows 2000建立映射檔。 只有保存在NTFS檔系統下的映射檔才可以被映射為具有讀/寫權限的檔夾,而保存在FAT、FAT32、ISO或UDF檔系統下的映射檔只能被映射為只讀檔夾。這主要是為了避免FAT/FAT32檔系統最大2GB檔的體積限制有可能導致的數據丟失。 該工具不具有磁盤操作能力,因為需要使用微軟的其他工具,例如Diskpart以及Format准備用於卷映射的磁盤分區。 |
IMAGEX常用命令參數: /CAPTURE 建立一個新的WIM檔 /BOOT 給鏡象加上引導標記,是該鏡象可引導(在建立WIM文件或增加鏡象時使用),子命令,需和CAPTURE,APPEND命令配合使用 /APPLY 提取WIM文件中某一鏡象 /APPEND 在以有的WIM檔增加一個鏡象 /INFO 顯示WIM檔資訊 /FLAGS 鏡象標記,在VISTA安裝盤裏9定義為啟動部分,2定義為安裝程式部分(在建立WIM檔或增加鏡象時使用),子命令, 需和CAPTURE, APPEND 命令配合使用 /MOUNT 以唯讀方式將WIM檔中的一個鏡象掛載到一個目錄下 /MOUNTRW 以可讀寫方式將WIM檔中的一個鏡象掛載到一個目錄下 /UNMOUNT 卸載以掛載的WIM文件 /DIR 列示WIM檔中某一鏡象裏的檔內容 /EXPORT 將直接修改過的WIM檔整理生成一個新的WIM檔(用於用MOUNTRW修改後的檔整理) /SPLIT 將已生成的WIM檔以指定大小進行分包(適用於安裝檔過大一張光碟放不下時分盤處理) /COMMIT 在UNMOUNT時使用,使WIM檔記錄修改資訊 使用中的部分數位定義 INDEX 在APPLY,MOUNT,MOUNTRW,DIR,EXPORT命令時WIM檔後使用到的,表示該鏡象在WIM檔中的位置 FLAGS 在建立WIM文件或者增加鏡象時用到,具體如何定義暫時不明,只知道9定義為BOOT部分,2定義為VISTA安裝程式部分 |
資料來源: |
【 Water 水哥 GoGoGo 旅遊趣(沐如多傑) 2013 - 2025 】 【網頁設計製作與管理:張恆隆 ∕ 張恒隆 ∕ Water ∕ 水哥 ∕ 沐如多傑 】 |
| 【 最後更新:2015年11月29日 21:17 】 |
|