[TOC]
章节:部署映像服务和管理工具
1. dism 命令 描述:DISM(Deployment Image Servicing and Management)就是部署映像服务和管理,用于安装、卸载、配置和更新脱机 Windows(R) 映像和脱机 Windows 预安装环境 (Windows PE) 映像中的功能和程序包;
Windows 10/8 ADK工具中的DISM取代了多个Windows 7时的AIK工具,包括PEImg、Intlcfg、程序包管理器和 ImageX。
我们可以利用ADK工具来实现,原先有一部分是imagex来处理,现在现在统一由DISM来完成;
命令产生日志:C:\Windows\Logs\DISM\dism.log
命令参数:
[TOC]
章节:部署映像服务和管理工具
1. dism 命令 描述:DISM(Deployment Image Servicing and Management)就是部署映像服务和管理,用于安装、卸载、配置和更新脱机 Windows(R) 映像和脱机 Windows 预安装环境 (Windows PE) 映像中的功能和程序包;
Windows 10/8 ADK工具中的DISM取代了多个Windows 7时的AIK工具,包括PEImg、Intlcfg、程序包管理器和 ImageX。
我们可以利用ADK工具来实现,原先有一部分是imagex来处理,现在现在统一由DISM来完成;
命令产生日志:C:\Windows\Logs\DISM\dism.log
命令参数:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 DISM.exe [dism_options] {Imaging_command} [<Imaging_arguments>] DISM.exe {/Image:<path_to_offline_image> | /Online} [dism_options] {servicing_command} [<servicing_arguments>] /English - 用英文显示命令行输出。 /Format - 指定报告输出格式。 /WinDir - 指定 Windows 目录的路径。 /SysDriveDir - 指定名为 BootMgr 的系统加载程序文件的路径。 /LogPath - 指定日志文件路径。 /LogLevel - 指定日志(1-4)中所示的输出级别。 /NoRestart - 取消自动重新启动和重新启动提示。 /Quiet - 取消除错误消息之外的所有输出。 /ScratchDir - 指定暂存目录的路径。 /Capture-Image - 将驱动器的映像捕获到新的 WIM 文件中,捕获的目录包含所有子文件夹和数据。 /CaptureDir - 指定捕获目录。 /Mount-Image - 从 WIM 或 VHD 文件装载映像。 /Commit-Image - 保存对装载的 WIM 或 VHD 映像的更改。 /Unmount-Image - 卸载已装载的 WIM 或 VHD 映像。 /Remount-Image - 恢复孤立的映像装载目录。 /Cleanup-Mountpoints - 删除与损坏的已安装映像关联的资源。 /List-Image - 显示指定映像中的文件和文件夹的列表。 /Delete-Image - 在具有多个卷映像的 WIM 文件中删除指定的卷映像。 /Split-Image - 将现有 .wim 文件拆分为多个只读拆分 WIM (SWM) 文件。 /Apply-Image - 应用一个映像。 - /ApplyDir - 指定应用目录。 /Append-Image - 将新映像添加到 WIM 文件中。(增量备份) /Export-Image - 将指定映像的副本导出到其他文件。 /Capture-Image - 将驱动器的映像捕获到新的 WIM 文件中。捕获的目录包含所有子文件夹和数据 /Get-ImageInfo - 显示有关 WIM 或 VHD 文件中映像的信息。 /Get-MountedImageInfo - 显示有关安装的 WIM 和 VHD 映像的信息。 /Apply-CustomDataImage - 冻结自定义数据映像中包含的文件。 /Capture-CustomImage - 将自定义设置捕获到 WIMBoot 系统上的增量 WIM 文件中,捕获的目录包括所有子文件夹和数据。 /Get-WimInfo - 显示有关 WIM 文件中的映像的信息。 /Mount-Wim - 从 WIM 文件挂载映像。 /Commit-Wim - 保存对挂载的 WIM 映像的更改。 /Unmount-Wim - 卸载挂载的 WIM 映像。 /Remount-Wim - 恢复孤立的 WIM 挂载目录。 /Cleanup-Wim - 删除损坏的WIM映像关联的挂载资源。 /Get-WIMBootEntry - 显示指定磁盘卷的WIMBoot 配置项。 /Get-MountedWimInfo - 显示显示挂载的 WIM 映像的信息。 /Online - 以正在运行的操作系统为目标。 /Image - 指定脱机 Windows 映像的根目录的路径。 /Capture-Ffu - 将物理磁盘映像捕获到新的FFU文件中。 /Apply-Ffu - 应用.ffu映像。 /Split-Ffu - 将一个现有的. FFU文件分割为多个read -onlysplit FFU文件。
基础命令实例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 $dism .exe /get-wiminfo /wimfile:"C:\install.wim" $dism /Mount-Image /ImageFile:输入install.wim的路径 /Name:" Windows 10 企业版" /MountDir:C:\winpe\offline$dism /mount-image /imagefile:C:\winpe\media\sources\boot.wim /index:1 /mountdir:C:\winpe\mount$dism /mount-wim /wimfile:"C:\install.wim" /index:1 /MountDir:c:\1 $dism /list-image /imagefile:"c:\wim\sources\install.wim" /index:1 | more$dism /get-mountedwiminfo$dism /unmount-wim /mountDir:C:\winpe /commit $dism /Unmount-Image /MountDir:C:\offline /Commit$dism /unmount-wim /mountdir:D:\win /discard $dism /Cleanup-Wim$dism /online /Get-CurrentEdition$dism /online /Get-TargetEditions$dism /online /Get-Features|more $dism /online /Disable-Feature /FeatureName:XXX $dism /online /Enable-Feature /FeatureName:XXX dism /Image:C:\test \offline /Add-Driver /Driver:C:\drivers\mydriver.inf dism /Image:C:\test \offline /Add-Driver /Driver:c:\drivers /Recurse dism /Image:C:\test \offline /Add-Driver /Driver:C:\drivers\mydriver.inf /ForceUnsigned dism /Image:C:\test \offline /Get-Drivers dism /Image:C:\test \offline /Remove-Driver /Driver:OEM1.inf /Driver:OEM2.inf dism /Image:C:\test \offline /Apply-Unattend:C:\answerfiles\myunattend.xml dism.exe /online /enable -feature /featurename:NetFX3 /Source:D:\sources\sxs
补充F&Q: 问题1.上面挂载过一次后,再次挂载不能挂载,显示错误: 0xc1420127,已经在指定 WIM 中装载指定的映像以进行读/写访问。 原因:封装后会把镜像挂载的目录进行卸载,由于可能镜像挂载的目录正处于打开的状态,因此不能卸载完成,然后自己就直接退出了,下次再次使用此目录就会因为仍在占用中而出现错误。 解决方法:先查看现在仍在使用的目录有哪些,然后对其进行卸载。1 2 3 4 5 6 7 8 9 10 11 12 13 14 $ dism /get-mountedwiminfo $dism /unmount-wim /mountdir:D:\Win /discard
系统备份(重点) 描述: 用 DISM 命令进行系统备份与还原不需要任何第三方软件,备份后的镜像文件格式为wim,备份文件占用空间小(比 Ghost 小很多),而且可进行增量备份。 缺陷:不支持热备份,备份与还原需要在 Win7 以上的 PE 或 第二系统中进行。 注意: 初始备份耗时较长,可以在没有原始备份文件情况下使用安装镜像中的 install.wim 进行增量备份,然后提取出此次备份即可
基础示例:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 dism /Capture-Image /ImageFile:D:\Win8BF\Win8Pro.wim /CaptureDir:C:\ /Name:Win8Pro-1 /Description:0000-00-00 dism /Append-Image /ImageFile:D:\Win8BF\Win8Pro.wim /CaptureDir:C:\ /Name:Win8Pro-2 /Description:0000-00-00 dism /Apply-Image /ImageFile:D:\Win8BF\Win8Pro.wim /Index:2 /ApplyDir:C:\ dism /Apply-Image /ImageFile:E:\sources\install.wim /Index:1 /ApplyDir:C:\ bcdboot C:\windows /s C: /l zh-cn bcdboot X:\windows /s X: /l zh-cn /f ALL (X为 USB 设备的盘符) dism /Online /Cleanup-Image /ScanHealth dism /Online /Cleanup-Image /CheckHealth DISM /Online /Cleanup-image /RestoreHealth dism /Online /Cleanup-Image /RestoreHealth /Source:c:\test \mount\windows /LimitAccess
注意事项 :
因 dism 安装 WIM 映像不会像 Ghost 那样格式化磁盘,所以如果需要可以自己格式化系统盘。
修改映像路径与应用目录可把任意一个系统备份的卷映像还原到任意一个分区。
修改卷映像索引号或卷映像名称可以还原备份映像中的任意一个备份。
也可以用此命令把 Windows 系统(WIM 映像)快速安装到任何分区。
2. sysprep命令 描述:系统准备工具(System Preparation - Sysprep)与其他部署工具一直使用,进入审核模式并可以将系统重新进入到OOBE全新部署阶段;
作用:
通过删除计算机特定信息(如安全标识符、事件日志内容、系统还原点、已安装的即插即用驱动程序等等)来通用化一个Windows安装,这样就能够使用磁盘映像(磁盘复制)工具,如ImageX,捕获通用化的安装,并将捕获的映像部署到其他计算机
将Windows安装启动到审核模式,这样能够通过添加额外的设备驱动程序、安装额外的应用程序来进行定制,然后测试安装
在将计算机交付给最终用户之前,应当确保当最终用户第一次启动计算机时显示欢迎使用Windows(系统全新体验)
命令配置:
sysprep 可执行目录:%systemroot%\system32\sysprep
sysprep 日志文件:%WINDIR%\System32\Sysprep\Panther
System过程概述:
Sysprep 验证。验证 Sysprep 是否可以运行。只有管理员才可以运行 Sysprep。每次只能运行一个 Sysprep 实例。另外,Sysprep 必须在其安装时所运行的 Windows 版本上运行。
日志记录初始化。初始化日志记录。有关详细信息,请参阅 Sysprep 日志文件。
分析命令行参数。分析命令行参数。如果用户未提供命令行参数,则会出现“Sysprep 准备工具”窗口,用户可以在其中指定 Sysprep 操作。
处理 Sysprep 操作。处理 Sysprep 操作,调用相应的 .dll 文件和可执行文件,并将操作添加到日志文件。
验证 Sysprep 处理操作。验证所有的 .dll 文件都已处理所有的任务,然后关闭或重新启动系统。
用法参数:1 2 3 4 5 6 7 8 9 10 11 sysprep.exe [/quiet] [/generalize] [/audit | /oobe] [/reboot | /shutdown | /quit] /unattend:<filename> /mode:vm /audit:强制计算机下次启动时进入审核模式。另外如果要随sysprep使用应答文件,为auditSystem和auditUser传送配置的任何设置都会被处理; /oobe:强制计算机在下次启动时加载欢迎使用Windows。另外如果要随sysprep使用应答文件为oobeSystem传送配置的任何设置都会在欢迎使用; /generalize :通用如果要打包部署到在其他不同型号机器上运行则需要进行指定; /reboot | /shutdown | /quit : 运行sysprep后重启系统/关闭系统/退出程序 /quiet : 安静模式不显示确认消息。当使用/unattend参数自动运行sysprep时,使用此参数 /unattend : answerfile sysprep运行时应用指定应答文件中的配置的设置,只有在/oobeSystem、/auditSystem、/auditUser传送中指定的设置能够应用 /mode:vm : Windows(R) 8 的新增内容。一般化虚拟硬盘 (VHD),这样可以将其部署为相同虚拟机 (VM) 或虚拟机监控程序上的 VHD。VM 重新启动后该 VM 可以引导到 OOBE
使用案例:
1 2 3 4 5 6 7 8 9 10 Sysprep /oobe /generalize /reboot Sysprep /audit /generalize /reboot Sysprep /generalize /oobe /mode:vm
注意事项 :
在你运行 Sysprep 时,Windows 仅替换操作系统卷上的计算机安全标识符 (SID)。
当 Sysprep 对映像进行一般化时,仅对常规分区进行一般化。因此如果单个计算机具有多个操作系统,必须在每个映像上逐个运行 Sysprep。
在运行 sysprep /generalize 之前不要使用 Windows 应用商店来更新你的 Windows 应用商店应,不运行 Sysprep /generalize 命令而将 Windows 映像移动或复制到其他计算机的做法不受支持。
参考来源:https://technet.microsoft.com/zh-cn/library/dn938331(v=vs.85).aspx https://technet.microsoft.com/zh-cn/library/dn938330(v=vs.85).aspx