如何使用DISM命令修复Windows镜像
DISM(Deployment Image Servicing and Management)是用于在线和离线健康扫描和修复受损的Windows操作系统的先进实用工具。
什么是DISM命令?
您的Windows操作系统8、8.1、10或11是否遇到问题,例如意外的应用程序崩溃或无法工作的实用程序或功能?
DISM(Deployment Image Servicing and Management)是Windows内置的命令行工具,可以直接从Windows在线服务器修复损坏或损坏的Windows操作系统文件和功能。
它用于修复在线(正在运行的操作系统)和离线Windows映像,格式为.wim、.vhd或.vhdx,以解决问题。 DISM可以通过命令行和Windows PowerShell访问。
系统管理员还使用DISM工具来服务、迁移和创建新的映像,特别是在Windows PE(预安装环境)、Windows RE(恢复环境)和Windows安装期间。
DISM首次在2012年的Windows 8和2012 R2中引入后,现在是所有运行最新版本的Microsoft操作系统的一部分。
用于修复损坏Windows文件的另一个程序是系统文件检查器(sfc.exe);然而,它将损坏的文件与系统的保存的.wim存储库进行比较;如果后者损坏,SFC可能无法修复问题。DISM工具克服了这个问题。基于保存在Microsoft更新服务器上的父副本,它可以扫描和修复.wim存储库。
在下一节中,我们将介绍一些DISM命令及其在PowerShell和Windows命令行中的实际应用,以扫描和链接_2 Windows操作系统:
如何通过命令提示符运行DISM实用程序
您可以使用命令行启动DISM工具并检查和修复Windows中的错误:
在搜索栏中输入cmd(命令提示符)。
如下所示,右键单击命令提示符并选择“以管理员身份运行”:要使用DISM命令行程序,您必须是管理员。
下面的部分显示了如何使用多个DISM命令扫描和修复Windows问题。
如何使用DISM修复Windows 10?
DISM使用三个重要参数来扫描、检查和修复损坏或损坏的Windows映像,它们是:
ScanHealth、CheckHealth和RestoreHealth。
还有两个与上述命令一起使用的输入,用于进行全面检查:
Cleanup-image用于进行全面检查和
Online用于检查正在运行的操作系统。
如何使用DISM CheckHealth命令?
CheckHealth参数启动组件存储中的基本检查。它运行速度快,只搜索已经在日志文件中的错误。此命令扫描组件存储的一部分。
组件存储跟踪和维护组成Windows操作系统的每个组件。要在线运行CheckHealth,请在命令提示符处键入以下内容并按Enter键。
Dism /Online /Cleanup-Image /CheckHealth
扫描完成后,将显示下面的窗口:
如何使用DISM ScanHealth命令?
ScanHealth比CheckHealth需要更长的时间,因为它会彻底扫描组件存储以查找损坏。完成检查Windows组件存储所需的时间将取决于您的Windows 10操作系统的运行情况。
从命令提示符中运行以下命令开始扫描:
Dism /Online /Cleanup-Image /ScanHealth
完成扫描后,将显示如下窗口:
ScanHealth通过将当前文件的哈希值与存储的哈希值进行比较,检查组件存储中的单个组件是否损坏,这就是为什么Scanhealth通常比CheckHealth扫描时间长。
此外,还会生成一个日志文件,可用于故障分析。在出现故障时,首先检查DISM.log
文件以查找特定问题。接下来检查Sessions.xml
日志文件,然后是CBS.log
文件。
如何使用DISM RestoreHealth命令?
RestoreHealth是继CheckHealth和ScanHealth之后的第三个最重要的DISM参数。
它与DISM一起使用,可以使用不同的源文件在线或离线修复Windows镜像。
以下Restorehealth命令用于修复在线操作系统:
DISM.exe /Online /Cleanup-image /Restorehealth
执行此命令时,DISM使用Windows Update获取必要的文件以修复损坏。根据破坏的程度,扫描和还原组件存储可能需要一段时间。从Windows Update服务器上,DISM将自动下载和替换损坏或丢失的组件文件。
命令完成后,将显示以下屏幕:
离线修复Windows映像
以上所述的DISM命令是针对在线运行的当前Windows操作系统的。
通过DISM可以离线处理更新、drivers、语言包和其他配置任务。
现在我们来看看如何使用DISM修复离线Windows文件。
要执行离线操作,可以使用可引导的安装光盘、Windows 10 ISO files或存储在另一个设备上的本地源文件,如“install.wim
”或“install.esd
”文件,并将其挂载为驱动器。
在继续之前,请检查文件是否与需要修复的Windows 10版本的版本、版本和语言匹配。
让我们看一个使用DISM命令提示符修复离线映像的示例。
要修复离线映像,请从命令提示符中运行以下DISM命令:
Dism /Image:C:offline /Cleanup-Image /RestoreHealth /Source:c:testmountwindowsLimitAccess
源位置需要根据离线映像进行更改,通常是WIM、VHD或VHDX文件。
LimitAccess告诉DISM不要检查Windows Update或Windows Server Update Services的源文件。
如何通过PowerShell运行DISM实用工具?
在上面的部分中,我们讨论了使用Windows命令行工具扫描、识别和解决操作系统问题。然而,相同的操作也可以使用Windows PowerShell Cmdlets完成。
在搜索框中输入PowerShell命令,并以管理员权限运行它,如下方截图所示,以访问PowerShell Cmdlets。
powershell
DISM PowerShell的Cmdlets通常与Dism.exe中的参数直接匹配。您可以从Microsoft website上获取所有DISM命令及其PowerShell Cmdlet等效的完整表格。
使用PowerShell帮助命令“get-help -examples”可以查看相关的语法、开关和参数。
PowerShell中使用的一些命令
- 对于CheckHealth:Repair-WindowsImage -CheckHealth
- 对于ScanHealth:Repair-WindowsImage -ScanHealth
- 对于RestoreHealth:Repair-WindowsImage -RestoreHealth
使用PowerShell执行DISM命令的示例
键入以下内容以启动CheckHealth Powershell cmdlets。
Repair-WindowsImage -online –CheckHealth
命令完成后,将出现以下屏幕:
您可以使用ScanHealth Powershell命令来执行彻底的检查和修复,如下所示:
Repair-WindowsImage -online –ScanHealth
成功运行命令后,将出现以下屏幕。
请注意,您必须具有管理员权限才能执行这些命令;否则,您将收到错误消息“所请求的操作需要提升”,并且DISM命令将无法工作。
您可以在此链接中找到有关PowerShell命令模块的所有信息。
DISM错误故障排除
DISM的目标是自动扫描和修复操作系统。但有时会失败。
本节将介绍运行DISM实用程序时可能遇到的一些常见错误。
错误:0x800f0954 – DISM失败。未执行任何操作。
这个错误是DISM命令失败时常见的问题。
当第三方程序在执行命令期间干扰DISM时会出现此错误。活动代理、Windows更新服务、只读访问install.wim
等都可能导致此错误。
让我们看看如何克服这些挑战,使DISM成功运行。
杀毒程序的干扰
解决方案:如果在停止杀毒程序后仍然出现错误,可以在DISM功能完成后卸载并重新安装它。因为Windows 10附带了功能强大的Microsoft Defender杀毒软件,所以不需要第三方杀毒软件。
损坏的Windows更新组件和注册表。
当后台智能传输服务(BITS)、加密服务(CryptSvc)和Windows更新服务配置错误时,DISM会失败。
解决方案:这些服务必须具有自动启动类型和启动状态,以成功自动运行Windows更新。偶尔,重新启动这些服务也可以解决问题:
禁用代理
您可能使用代理来保护您的隐私,这会阻止DISM运行命令。
解决方案:解决方法是关闭代理,然后运行DISM工具。
对install.wim的只读访问
大多数情况下,通过直接从Windows 10安装ISO复制文件install.wim
来启动DISM离线扫描。由于install.wim
文件具有只读访问权限,DISM失败。
解决方案:通过从右键单击install.wim
文件时的上下文菜单选择“属性”,然后导航到只读框来删除只读权限。
如何修复DISM错误50
DISM错误50是另一种常见的错误类型。当用户尝试运行以下命令之一时会出现:
- Dism /Online /Cleanup-Image /CheckHealth
- Dism /Online /Cleanup-Image /ScanHealth
- Dism /Online /Cleanup-Image /RestoreHealth
导致此错误的主要原因是注册表键放错位置。
因此,要纠正此问题,您必须按以下方式删除该键:
使用命令提示符运行Regedit以访问注册表。
导航到HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControl
。
然后,找到MiniNT文件夹并删除它,如下图所示。
验证修改后,请重新启动Windows 10计算机。
结论
DISM工具是一款多功能和前沿的工具,专家可以利用具备技术背景。它非常适合系统管理员使用。这个复杂的工具可以解决组件存储的损坏问题,而SFC和CHKDSK无法修复操作系统问题。
您还可以自动解决一些最佳repair tools to solve Windows 10问题。