DISM 操作系统包 (.cab 或.msu) 服务命令行选项
-
使用 DISM 与 Windows cabinet (.cab) 或 Windows 更新独立安装程序 (.msu) 文件安装或删除的更新、 service pack、 语言包,以及启用或禁用 Windows 功能。 功能是核心操作系统的可选组件。
语法
复制
DISM.exe {/Image:<path_to_image_directory> | /Online} [dism_global_options] {servicing_option} [<servicing_argument>]
以下操作系统服务包的选项是可用于脱机映像:
复制
DISM.exe /Image:<path_to_image_directory> [/Get-Packages | /Get-PackageInfo | /Add-Package | /Remove-Package ] [/Get-Features | /Get-FeatureInfo | /Enable-Feature | /Disable-Feature ] [/Cleanup-Image]
以下操作系统服务包的选项有正在运行的操作系统:
复制
DISM.exe /Online [/Get-Packages | /Get-PackageInfo | /Add-Package | /Remove-Package ] [/Get-Features | /Get-FeatureInfo | /Enable-Feature | /Disable-Feature ] [/Cleanup-Image]
操作系统服务包的选项
本部分介绍如何使用每个操作系统服务包的选项。 这些选项不区分大小写。
/Get-Help /?
包维护的命令行选项后立即使用,会显示有关选项和参数信息。
指定映像时,可能会提供其他主题。
语法:
复制
Dism /Get-Help
示例:
复制
Dism /Image:C:\test\offline /Add-Package /?
复制
Dism /Online /Get-Packages /?
/Get-Packages
在图中显示的所有包有关的基本信息。 /Format: table 或 /Format:List 参数用于为表或列表中显示的输出。
语法:
复制
Dism /Get-Packages [/Format:{Table | List}]
示例:
复制
Dism /Image:C:\test\offline /Get-Packages
复制
Dism /Image:C:\test\offline /Get-Packages /Format:Table
复制
Dism /Online /Get-Packages
/Get-PackageInfo
显示详细信息为.cab 文件提供的程序包。 可以指定仅.cab 文件。 不能使用此命令获取包的.msu 文件的信息。 / PackagePath 可以指向一个.cab 文件或文件夹。
可以使用 /Get-Packages 选项以在图中,查找包的名称,或者可以指定.cab 文件的路径。 .Cab 文件的路径应指向到包的原始源,而不在脱机映像上安装文件。
语法:
复制
Dism /Get-PackageInfo {/PackageName:<name_in_image> | /PackagePath:<path_to_cabfile>}
示例:
复制
Dism /Image:C:\test\offline /Get-PackageInfo /PackagePath:C:\packages\package.cab
复制
Dism /Image:C:\test\offline /Get-PackageInfo /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0
/Add-Package
将指定的.cab 或.msu 包安装在映像中。 仅当目标映像处于脱机状态,装载或应用时,才支持.msu 包。
可以在一个命令行上添加多个包。 将检查每个包的适用性。 如果包不能应用于指定的图像,将收到一条错误消息。 如果你希望命令处理,而每个包的适用性检查,请使用 /IgnoreCheck 参数。
使用 /PreventPending 选项以跳过包的安装包或 Windows 映像具有挂起的联机操作。 (在 Windows 8/Windows PE 4.0 中引入)。
/ PackagePath 可以指向:
-
单个.cab 或.msu 文件。
-
包含单个展开的.cab 文件的文件夹。
-
包含单个.msu 文件的文件夹。
-
包含多个.cab 或.msu 文件的文件夹。
注意
- 如果 /PackagePath 指向包含在其根目录将.cab 或.msu 文件的文件夹,所有子文件夹也将以递归方式检查.cab 和.msu 文件。
- / 添加的包不会运行包的适用性和依赖项的完整检查。 如果在添加依赖项的包,请确保添加包时,安装所有依赖项。
语法:
复制
Dism /Add-Package /PackagePath:<path_to_cabfile> [/IgnoreCheck] [/PreventPending]
示例:
复制
Dism /Image:C:\test\offline /LogPath:AddPackage.log /Add-Package /PackagePath:C:\packages\package.msu
复制
Dism /Image:C:\test\offline /Add-Package /PackagePath:C:\packages\package1.cab /PackagePath:C:\packages\package2.cab /IgnoreCheck
复制
Dism /Image:C:\test\offline /Add-Package /PackagePath:C:\test\packages\package.cab /PreventPending
/Remove-Package
从映像中删除指定的.cab 文件包。 可以指定仅.cab 文件。 此命令不能用于删除.msu 文件。
请注意 使用此命令从脱机映像中删除包不会减小映像大小。
/PackagePath 选项可用于指向包的原始源,指定到该 CAB 文件的路径,或如下图所示,可以按名称指定的包。 使用 /Get-Packages 选项以在图像中找到的包的名称。
语法:
复制
/Remove-Package {/PackageName:<name_in_image> | /PackagePath:<path_to_cabfile>}
示例:
复制
Dism /Image:C:\test\offline /LogPath:C:\test\RemovePackage.log /Remove-Package /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0
复制
Dism /Image:C:\test\offline /LogPath:C:\test\RemovePackage.log /Remove-Package /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0 /PackageName:Microsoft-Windows-MediaPlayer-Package~31bf3856ad364e35~x86~~6.1.6801.0
复制
Dism /Image:C:\test\offline /LogPath:C:\test\RemovePackage.log /Remove-Package /PackagePath:C:\packages\package1.cab /PackagePath:C:\packages\package2.cab
/ Get 功能
显示在包中的所有功能 (包括可选的 Windows foundation 功能的操作系统组件) 的基本信息。 可以使用 /Get-Features 选项以在图中,查找包的名称,或者可以指定包的原始源的路径。 如果不指定程序包名称或路径,将列出在图像中的所有功能。 / PackagePath 可以指向一个.cab 文件或文件夹。
功能名称不区分大小写如果要处理非 Windows 8 的 Windows 映像。
/Format: table 或 /Format:List 参数用于为表或列表中显示的输出。
语法:
复制
/Get-Features {/PackageName:<name_in_image> | /PackagePath:<path_to_cabfile>} [/Format:{Table | List}]
示例:
复制
Dism /Image:C:\test\offline /Get-Features
复制
Dism /Image:C:\test\offline /Get-Features /Format:List
复制
Dism /Image:C:\test\offline /Get-Features /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0
复制
Dism /Image:C:\test\offline /Get-Features /PackagePath:C:\packages\package1.cab
/Get-FeatureInfo
显示一项功能的详细的信息。 必须使用 /FeatureName。 功能名称不区分大小写如果处理的 Windows 10 或 Windows 以外的 Windows 映像 8.x。 /Get-Features 选项可用于在图像中找到的功能名称。
/ 包名称和 /PackagePath 是可选的可用于在包中查找特定功能。
语法:
复制
/Get-FeatureInfo /FeatureName:<name_in_image> [{/PackageName:<name_in_image> | /PackagePath:<path_to_cabfile>}]
示例:
复制
Dism /Image:C:\test\offline /Get-FeatureInfo /FeatureName:Hearts
复制
Dism /Image:C:\test\offline /Get-FeatureInfo /FeatureName:Hearts /PackagePath:C:\packages\package.cab
/ 启用功能
启用或更新映像中指定的功能。 必须使用 /FeatureName 选项。 功能名称不区分大小写如果要处理非 Windows 8 的 Windows 映像。 使用 /Get-Features 选项在图像中查找功能的名称。
可以共享同一个父包的功能的一个命令行中多次指定 /FeatureName 选项。
无需指定使用 /PackageName 选项,如果程序包是一个 Windows Foundation 程序包的包名称。 否则,使用 /PackageName 指定父包的功能。
可以还原并启用以前已从映像中删除的功能。 使用 /Source 参数指定还原功能所需的文件的位置。 文件的源可以在已装载的映像,例如 c:\test\mount\Windows Windows 文件夹。 此外可以作为文件,例如 z:\sources\SxS 源使用 Windows 的并行文件夹。
如果指定多个 /Source 自变量,从其发现和位置的其余部分将被忽略的第一个位置中收集文件。 如果未指定的一项功能已被移走 /Source,将使用在注册表中的默认位置,或者,对于在线映像,请使用 Windows Update (WU)。
使用 /LimitAccess 防止 DISM 而对于在线映像联系 WU。
使用/所有启用的指定功能的所有父功能。
/Source /LimitAccess,和/所有自变量可以使用 Windows 10 中,Windows 8.x 和上面 4.0 的 Windows PE 映像。
语法:
复制
/Enable-Feature /FeatureName:<name_in_image> [/PackageName:<name_in_image>] [/Source: <source>] [/LimitAccess] [/All]
示例:
复制
Dism /Online /Enable-Feature /FeatureName:Hearts /All
复制
Dism /Online /Enable-Feature /FeatureName:Calc /Source:c:\test\mount\Windows /LimitAccess
复制
Dism /Image:C:\test\offline /Enable-Feature /FeatureName:Calc /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0
/ 禁用功能
禁用映像中指定的功能。 必须使用 /FeatureName 选项。 功能名称不区分大小写如果要处理非 Windows 8 的 Windows 映像。 使用 /Get-Features 选项在图像中查找功能的名称。
可以在同一个父包中的功能的一个命令行中多次指定 /FeatureName。
无需指定包名称使用 /PackageName 选项,如果包是 Windows Foundation 程序包。 否则,使用 /PackageName 指定父包的功能。
使用 /Remove 删除一项功能不会从映像删除功能的清单。 可以仅使用此选项可用于 Windows 10 中,Windows 8.x 和上面 4.0 的 Windows PE 映像。 将列出该功能,为"已删除"时 /Get-FeatureInfo 用于显示功能的详细信息并将可还原和启用 /Enable-Feature 使用 /Source 选项。
语法:
复制
/Disable-Feature /FeatureName:<name_in_image> [/PackageName:<name_in_image>] [/Remove]
示例:
复制
*Dism /Online /Disable-Feature /FeatureName:Hearts
复制
Dism /Image:C:\test\offline /Disable-Feature /FeatureName:Calc /PackageName:Microsoft.Windows.Calc.Demo~6595b6144ccf1df~x86~en~1.0.0.0
/ 清理映像
执行清理或恢复操作在映像上。 / AnalyzeComponentStore 和 /ResetBase 可用于上面 5.0 的 Windows 10、 Windows 8.1 和 Windows PE 映像。 从 Windows 10,版本 1607 中,开始可以使用 /ResetBase 指定 /Defer。 但是我们强烈建议你仅在 DISM /Resetbase 需要 30 分钟以上的时间完成时才使用 /Defer 作为工厂中的选项。 / StartComponentCleanup 可用于 Windows 10 中,Windows 8.x 和上面 4.0 的 Windows PE 映像。 / CheckHealth、 /ScanHealth、 /RestoreHealth、 /Source 和 /LimitAccess 可以使用 Windows 10 中,Windows 8.x 和上面 4.0 的 Windows PE 映像。 / 提供服务的版本早于 Windows 7 Service Pack 1 (SP1) 映像的 Windows 时,不能使用 HideSP 和 /SPSuperseded。
提示 若要确定上次运行 /ResetBase 选项,请检查此注册表路径下的 LastResetBase_UTC 注册表项:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing
语法:
复制
/Cleanup-Image {/RevertPendingActions | /SPSuperseded [/HideSP] | /StartComponentCleanup [/ResetBase [/Defer]] | /AnalyzeComponentStore | /CheckHealth | /ScanHealth | /RestoreHealth [/Source: <filepath>] [/LimitAccess]}
参数 描述 /RevertPendingActions 如果出现启动故障,可以使用 /RevertPendingActions 选项来恢复系统。 该操作将恢复以前的服务操作的所有挂起的操作,因为这些操作可能会启动失败的原因。 在正在运行的操作系统或 Windows PE 或 Windows 恢复环境 (Windows RE) 映像上不支持 /RevertPendingActions 选项。 重要提示:应仅在未启动的 Windows 映像上的系统恢复方案中使用 /RevertPendingActions 选项。 SPSuperseded 删除任何 service pack 的安装过程中创建的备份文件。 使用 /HideSP 会阻止服务包安装更新控制面板中列出。 /SPSuperseded 操作完成后,无法卸载 service pack。 /StartComponentCleanup 清理被取代的组件,并减少了组件存储区的大小。 使用 /ResetBase 重置被取代的组件,可以进一步减少将组件存储区大小的基数。 安装的 Windows 更新无法卸载后运行 /StartComponentCleanup /ResetBase 选项。 使用与 /ResetBase /Defer 推迟到下一步的自动维护的长时间运行清理操作。 /AnalyzeComponentStore 创建一个报表组件存储。 有关报表以及如何使用报表中提供的信息的详细信息,请参阅确定 WinSxS 文件夹的实际大小。 /CheckHealth 检查是否该映像已标记为已由过程失败,并且是否可以修复损坏。 /ScanHealth 扫描组件存储已损坏的映像。 此操作将需要几分钟。 /RestoreHealth 扫描组件存储已损坏,映像,并自动执行修复操作。 此操作将需要几分钟。 / 源 与 /RestoreHealth 一起使用,以指定的已知良好版本可用于修复,如已装载的映像的 Windows 目录的路径的文件的位置。 /LimitAccess 防止 DISM 联系 Windows 更新修复的在线图像。 示例:
复制
Dism /Image:C:\test\offline /Cleanup-Image /RevertPendingActions
复制
Dism /Image:C:\test\offline /Cleanup-Image /SPSuperseded /HideSP
复制
Dism /Online /Cleanup-Image /ScanHealth
复制
Dism /Online /Cleanup-Image /RestoreHealth /Source:c:\test\mount\windows /LimitAccess
若要了解详细信息,请参阅修复 Windows 映像。
限制
- 当你在脱机映像中安装包时,包状态为"正在挂起安装"由于挂起的联机操作。 换而言之,在启动映像和处理联机操作时,将安装包。 如果请求执行后续操作,它们不能完成之前挂起的联机操作之前处理。 添加具有 /AddPackage 时要跳过包的安装有挂起的联机操作的包时,可以使用 /PreventPending 选项。
- 某些程序包要求首先安装其他程序包。 不应假定将满足依赖项。 如果有依赖关系要求,应使用应答文件来安装所需的包。 通过将答案文件传递到 DISM,可以按正确的顺序安装多个包。 这是用于安装多个包的首选的方法。 有关详细信息,请参阅添加或删除包使用 DISM 脱机。
- 在命令行中列出的顺序安装包。
- 使用时 DISM 列表中的 Windows PE 映像的可选组件,可选组件将始终列出为挂起,即使在维护操作成功。 这是设计使然,并且需要你执行任何其他操作。
相关的主题
-