Dism備份還原相關指令整理 (ScratchDir目錄必須存在,避免錯誤)

先在備份存儲分區下新建文件夾X:\sources和X:\temp (X表示備份位置,文件夾名字自定,英文)

進入winPE後,命令提示符

使用diskpart確定路徑(不同的環境下顯示的盤符可能不同)
diskpart
Diskpart>在這行字符後面直接輸入diskpart命令回車即可執行相應的操作。

幾個基本命令如下(注:// 前面為命令,//後面為命令解釋):
list disk // 列出所有接在電腦上的存儲設備,並為每個存儲設備用數字編號,通常主硬盤編號為0。
select disk N // 選中編號為N的磁盤
list part // 列出選中磁盤上所有的分區
select part N // 選中編號為N的分區
detail part // 顯示選中分區的詳細信息。其中“LTR”即為分區盤符。
exit // 退出Diskpart

這裡再介紹兩條命令(非Diskpart命令):
cd /d xxxxxx // 進入xxxx目錄。如,進入C:,則輸入cd /d C:
dir /a // 顯示當前目錄中的文件結構。

第一次備份:
Dism /Capture-image /Imagefile:X:\sources\install.wim /Scratchdir:X:\temp (/compress:maximum) /Capturedir:C:\ /Name:xxxx /Description:xxxxxx

後期備份:
Dism /Append-Image /Imagefile:X:\sources\install.wim /Scratchdir:X:\temp
(compress:maximum) /Capturedir:C:\ /Name:xxxx /Description:xxxx

/Compress:Maximum 高壓,當然對應用時更多,這一句為可選參數,默認為fast
/Description:xxxxx 可選參數,添加描述方便後期處理使用
(C表示系統安裝所在分區,xxxx中不要出現空格,每個參數以/開始、用空格隔開)

獲取WIM文件映像信息:
例如:查看 G:\sources\install.wim 映像信息
Dism /Get-WimInfo /Wimfile:G:\sources\install.wim

命令解釋:
/Get-WimInfo //顯示有關 WIM 文件中的映像的信息。
/Wimfile //指定 WIM 文件路徑。
    可以在後面添加索引號或名稱來查看某次備份的詳細信息。還可以在後面添加 >d:\list.txt 把信息導出為記事本,方便查看。如:
Dism /Get-WimInfo /Wimfile:G:\sources\install.wim /Index:1 >d:\list.txt
或:Dism /Get-WimInfo /Wimfile:G:\sources\install.wim /Name:Win8Pro-1 >d:\list.txt
    在一個映像中如果有兩個卷映像同名,就不能用指定名稱來查看這兩個卷映像的詳細信息。

具有多個卷映像的 WIM 文件中卷映像的處理:
例如:刪除 G:\sources\install.wim 中的第二次備份:               
Dism /Delete-Image /ImageFile:G:\sources\install.wim /Index:2
命令解釋:
/Delete-Image // 從具有多個卷映像的 WIM 文件刪除指定的捲映像。
    此命令僅刪除卷映像名稱與描述,而不會刪除卷映像數據。可用於防止誤應用該卷映像。刪除指定的捲映像僅刪除了名稱與描述,而不會刪除卷映像數據,所以不會減小 WIM 文件的體積。

用 /Export-Image 命令從具有多個卷映像的 WIM 文件中提取需要保留的單獨卷映像,以減小 WIM 文件的體積。
例如:從 G:\sources\install.wim 中提取第二次備份到 G:\sources 中,保存為 install-02.wim):
Dism /Export-Image /SourceImageFile:G:\sources\install.wim /SourceIndex:2 /DestinationImageFile:G:\sources\install-02.wim
命令解釋:
/Export-Image – 將指定映像的副本導出到其他文件。
/SourceImageFile – 指定映像文件來源路徑。
/SourceIndex – 指定來源索引。
    如果 Win8Pro.wim 中有五個備份,我們只想保留其中第二與第五個備份,同樣可以用 /Export-Image 命令把其中 Index:2 與 Index:5 提取出來,保存為 Win8.wim。命令如下:
Dism /Export-Image /SourceImageFile:G:\sources\install.wim /SourceIndex:2 /DestinationImageFile:G:\sources\install-02.wim
Dism /Export-Image /SourceImageFile:G:\sources\install.wim /SourceIndex:5 /DestinationImageFile:G:\sources\install-02.wim
     install02.wim 中就包涵有兩個卷映像,卷映像的索引號會發生改變,但名稱不會變。

把 Windows 系統(WIM 映像)快速安裝到任何分區:
把 G:\sources\install.wim 中第二次備份還原到 C 分區,指定臨時目錄為 G:\temp
Dism /Apply-Image /ImageFile:G:\sources\install.wim /Index:2 /ScratchDir:G:\temp /ApplyDir:C:\ /Verify
 /Apply-Image //應用一個映像。
/ApplyDir //指定應用目錄。
/Index // 指定索引。此項不能省略。
    因 Dism 安裝 WIM 映像不會像 Ghost 那樣格式化磁盤,所以如果需要可以自己格式化系統盤。
    修改映像路徑與應用目錄可把任意一個系統備份的捲映像還原到任意一個分區。修改卷映像索引號或卷映像名稱可以還原備份映像中的任意一個備份。
    
也可以用此命令把 Windows 系統(WIM 映像)快速安裝到任何分區。
例如在 PE 中把 Win8Pro 安裝到 C 分區(設 Win8ISO 用虛擬光驅加載的盤符為 E):
Dism /Apply-Image /ImageFile:E:\sources\install.wim /Index:1 /Scratchdir:X:\temp /ApplyDir:C:\
    由於 Windows 系統原始(WIM 映像)中沒有啟動引導文件,需要添加啟動引導:
bcdboot C:\windows /s C: /l zh-cn
    如果是把 Windows 8 安裝到 USB 設備中作 Windows To Go,也應添加啟動引導:
bcdboot X:\windows /s X: /l zh-cn /f ALL (X為 USB 設備的盤符)。

附錄:一些可用選項

/Verify – 指定校驗。用於檢查錯誤和文件重複。
/CheckIntegrity – 用於在捕捉、卸載、導出和提交操作中使用 .wim 文件時檢測和跟踪 .wim 文件的損壞情況。
    用於在 DISM 檢測到 .wim 文件在應用和裝載操作中發生損壞時停止操作。
/ScratchDir – 指定暫存目錄的路徑。此目錄必須存在。該目錄必須位於本地。
/Compress – 用於指定對初始捕捉操作使用的壓縮類型。
    maximum 選項能提供最佳壓縮效果,但是捕捉映像所用的時間較長。
    fast 選項能提供更快速的映像壓縮,但生成的文件比使用 maximum 選項壓縮的文件大。這也是在未指定參數時所用的默認壓縮類型。
    none 選項不會壓縮捕捉的映像。
/ConfigFile – 指定映像捕捉和壓縮命令排除列表配置文件的位置。

默認的排除列表——默認情況下,DISM.exe 工具將排除以下文件:

[ExclusionList]
\$ntfs.log
\hiberfil.sys
\pagefile.sys
\swapfile.sys
“\System Volume Information”
\RECYCLER
\Windows\CSC
[CompressionExclusionList]
*.mp3
*.zip
*.cab
\WINDOWS\inf\*.pnf

 

/ScratchDir – 指定暫存目錄的路徑。

創建或處理 Windows 映像時,你應使用帶有 DISM 的 /ScratchDir 選項,在不同的驅動器上創建臨時目錄。臨時目錄適用於許多 DISM 操作,包括捕獲映像、安裝語言包、更新或在 Windows 映像中安裝或刪除 Windows 功能。先將一些文件擴展到此臨時目錄,然後再將它們應用於 Windows 映像。

/ScratchDir
    指定用來解壓縮服務文件的臨時目錄。此目錄必須存在。
    指定在服務期間提取臨時使用的文件時要使用的臨時目錄。該目錄必須位於本地。
    安裝完成後,不再需要此目錄的內容,可以將其刪除。
    如果你不使用 /ScratchDir 選項設置臨時目錄路徑, Windows PE 將默認創建 32-MB 臨時目錄。
    如果未指定臨時目錄,將使用 \Windows\%Temp% 目錄,以及每次運行 DISM 時隨機生成的十六進制值的子目錄名稱。每次操作後,都會刪除暫存目錄中的項。
    作為最佳做法,你應使用 /ScratchDir 選項,轉而在其他有足夠空間支持任何映像管理和你所執行的服務操作的分區上指定目錄

發表迴響