Windows 中的驱动程序备份:使用 PnPUtil 和 DISM 的完整指南

最后更新: 九月15, 2025
  • 使用 PnPUtil 和 DISM 安全地创建和恢复驱动程序备份。
  • 将驱动程序集成到 WIM 映像中以进行全新安装。
  • 避免冲突:检查、清理并验证 OEM .inf 包。
  • 使用完整的系统映像补充驱动程序备份。

在 Windows 中备份驱动程序

多年使用同一台电脑,不断安装卸载程序,累积各种更新和补丁,难免会造成系统损耗:有时最实际的解决方法就是全新安装系统。但问题在于,全新安装也会清除所有驱动程序。拥有可靠的驱动程序备份可以省去您在制造商网站上搜索驱动程序的大量时间,并避免设备突然停止工作带来的不便。

本指南全面介绍了如何使用 Windows 系统自带工具(PnPUtil 和 DISM)创建驱动程序备份,如何在格式化后快速恢复备份,甚至还提供了一种高级方法,可以将备份集成到 Windows 映像中,并创建包含驱动程序的安装程序。您还将学习如何清理旧驱动程序、可能遇到的常见问题,以及哪些第三方软件值得考虑(以及何时应该避免使用)。

什么是驱动程序以及为什么要照顾它?

驱动程序是一小段软件,它使操作系统能够与硬件通信。如果没有这个“粘合剂”,显卡、网卡或集成声卡就无法正常工作。因此,拥有正确且最新的驱动程序对于性能、稳定性和安全性至关重要。

并非所有驱动程序的分发方式都相同。你会发现有.inf格式(直接从包含二进制文件的 INF 文件安装)、打包的.exe或.msi 文件(带有安装向导的安装程序),以及一个名为“启动关键驱动程序”的关键驱动程序组(包括图形和存储驱动程序等),缺少这些驱动程序,Windows 甚至无法启动。在进行任何格式化或重大升级之前,务必特别注意最后一个驱动程序组。

Windows 存储驱动程序的位置

Windows 将驱动程序集中在系统存储库中:C:\Windows\System32\DriverStore。该文件存储库包含系统用于安装和重新安装驱动程序的已签名软件包。随着时间的推移,旧的、未使用的驱动程序版本可能会不断累积,因此在创建备份之前或之后,最好仔细检查并根据需要删除任何过时的驱动程序。

除了驱动程序库之外,设备管理器还允许您查看每个设备的状态、版本和相关文件。您可以在这里更新、回滚、禁用或卸载驱动程序,但务必谨慎:修改错误的驱动程序可能会导致大范围故障,尤其是在影响关键组件时。

方法 1:使用 PnPUtil 快速备份

PnPUtil 是 Windows 自带的一个命令行实用程序,可用于列出、导出、添加和删除驱动程序库中的驱动程序。它非常适合进行简单、便携的备份,尤其是在格式化硬盘之前。

推荐步骤

1) 以管理员身份打开 PowerShell 或命令提示符(Windows + X > Windows PowerShell(管理员)或终端(管理员))。

2) 选择一个外部硬盘或U盘,并创建一个目标文件夹(最好位于根目录,以便于查找)。例如,如果您的硬盘是E盘,您可以运行:

E:
mkdir Drivers
cd Drivers

3)使用以下命令将所有驱动程序从系统导出到当前文件夹:

pnputil /export-driver * ./

只需一条命令,Windows 就会将驱动程序库中的所有软件包复制到您的文件夹中。这种方法快速有效,而且允许您随身携带这些驱动程序,以便日后重新安装。

使用 PnPUtil 列出、删除和添加驱动程序

– 查看存储库中存在的第三方驱动程序:

pnputil /enum-drivers

– 要删除特定驱动程序(例如,oem6.inf):

pnputil /delete-driver oem6.inf

–从 INF 文件添加控制器(如果您想恢复特定控制器,这将非常有用):

pnputil /add-driver C:\Drivers\MiDriver\driver.inf

– 从包含子文件夹的文件夹添加文件并立即尝试安装:

pnputil /add-driver C:\Drivers\ /subdirs /install

移除驱动程序时应谨慎操作:首先使用`/enum-drivers`命令检查驱动程序所属的软件包以及它是否正在使用。预先导出驱动程序的好处在于,如果操作失误,您可以重新加载驱动程序而不会出现问题。

  Linux ZRAM 完全指南:如何优化内存

方法2:使用DISM备份和还原

DISM(部署映像服务和管理)是 Windows 映像的瑞士军刀。它的一项功能是允许您导出系统驱动程序,并在在线或离线安装期间批量重新注入这些驱动程序。

导出当前驱动程序

1) 在系统驱动器以外的驱动器上创建目标文件夹(例如,J:\\Drivers),以避免冲突并确保其安全。

2)在管理员控制台中运行:

dism /online /export-driver /destination:J:\Controladores

DISM 会从软件仓库收集软件包,并将包含二进制文件的 .inf 文件保存到指定路径。请注意一个重要的限制:此方法仅适用于基于 INF 的驱动程序;MSI 或 EXE 格式的安装程序无法通过此方式导出。

恢复到正在运行的安装

重新安装 Windows 后,您可以使用以下方法一次恢复所有驱动程序:

dism /online /Add-Driver /Driver:J:\Controladores /Recurse

/Recurse参数会扫描子文件夹,并将找到的所有内容以 INF 格式追加到目录。如果 DISM 标记出一个未签名的软件包,并且您确定其来源,则可以使用/ForceUnsigned 参数对该特定 INF 文件重复此操作,但建议尽可能使用已签名的官方驱动程序。

检查图像中的驱动程序

要检查已安装哪些驱动程序,请列出软件包:

dism /online /Get-Drivers

如果你想查看所有图片,包括图片自带的图片,请添加/all :

dism /online /Get-Drivers /all

为确保唯一性,新增的集成驱动程序已重命名为oem*.inf。这样,您可以验证导入是否成功,并在需要移除或替换特定软件包时快速找到它。

高级方法:将驱动程序集成到 Windows ISO 中

如果您想更进一步,可以创建一个已包含驱动程序的 Windows 安装介质。这样,在执行全新安装时,“即插即用”功能就能自动安装驱动程序,省去了手动安装的麻烦。

1)获取 Windows ISO

使用微软官方网站上的媒体创建工具下载与您系统版本和架构相同的 ISO 文件。创建一个工作文件夹,例如C:\\ISO,并将所需文件保存到该文件夹​​中。

2)将 install.esd 转换为 install.wim

最新的 ISO 镜像通常包含install.esd 文件,该文件无法使用 DISM 修改。我们需要将其转换为install.wim 文件。您可以使用 Windows ADK 或像 ESD2WIM-WIM2ESD 这样的简单工具来完成此操作(以管理员身份运行并按照向导导出所有索引)。此过程需要一些时间,完成后会生成install.wim 文件,我们需要将其放置在 C:\ISO 目录下。

3)识别索引并挂载镜像

首先,找出 WIM 包含哪些版本及其索引:

Dism /Get-ImageInfo /ImageFile:C:\ISO\install.wim

创建挂载文件夹,例如C:\\Offline,并挂载您感兴趣的索引(例如,索引 1):

Dism /Mount-Image /ImageFile:C:\ISO\install.wim /index:1 /MountDir:C:\Offline

完成后,路径 C:\\Offline 将显示您正在修改的 Windows 系统结构。接下来,我们将添加您之前导出的驱动程序副本。

4)将驱动程序添加到映像中

使用与之前相同的命令,但指向已安装的图像:

Dism /Image:C:\Offline /Add-Driver /Driver:J:\Controladores /Recurse

如果任何软件包因签名问题而失败,请酌情使用/ForceUnsigned参数将该特定的 INF 软件包集成到软件包中(安全第一)。然后,列出当前驱动程序以供确认:

Dism /Image:C:\Offline /Get-Drivers

要查看所有内容(包括原始图像中的内容),请运行:

Dism /Image:C:\Offline /Get-Drivers /all

5)确认卸载并重建 ISO

要保存对 WIM 的更改并释放安装文件夹:

Dism /Unmount-Image /MountDir:C:\Offline /Commit

准备就绪后,使用 ISO 编辑工具(例如 UltraISO、Nero、Isomaster 等)将 ISO 结构中的install.esd 文件替换为您修改后的install.wim 文件。创建安装 U 盘,安装 Windows 时,您的驱动程序将在安装过程中自动注入到驱动程序库中。

  如何在 Windows 中一次重命名多个文件

补充提示:全新安装后出现的许多问题都源于 Windows 更新将驱动程序替换为通用版本。建议您配置系统,阻止 Windows 更新自动更新驱动程序,至少在初始安装期间如此。

从设备管理器查看、更新和回滚

要打开它,请右键单击“开始”按钮,然后选择“设备管理器”。展开设备类别,转到“属性”,然后访问“驱动程序”选项卡。在这里,您可以查看驱动程序文件、更新驱动程序、回滚到以前的版本(如果可用)、禁用或卸载驱动程序。使用设备管理器来验证,在恢复备份后,您需要的驱动程序版本是否已激活,以及一切是否正常运行。

卸载并清理剩余的驱动程序

随着时间的推移,不再使用的旧驱动程序会残留下来。您可以像我们之前看到的那样,使用 PnPUtil 列出并删除它们,或者使用 DISM 管理脱机映像中的软件包。例如,要列出位于 C:\\test\\offline 的映像中的驱动程序:

Dism /Image:C:\test\offline /Get-Drivers

并消除一些特定的 OEM:

Dism /Image:C:\test\offline /Remove-Driver /Driver:OEM1.inf /Driver:OEM2.inf

务必记下已发布的确切名称(以 .inf 结尾),并确认它不是已被占用的软件包。此清理操作可以释放空间并减少驱动程序之间潜在的冲突。

典型的驾驶员问题及其处理方法

– 驱动程序冲突:两个软件包争用同一硬件,或者安装了新的、不兼容的驱动程序。检查设备管理器中是否有黄色三角形,查看错误代码,然后从制造商处重新安装正确的版本。

– 安装失败或安装错误:有时自动安装工具会安装错误的驱动程序。理想情况下,请从官方网站下载并确保与您的 Windows 版本(32 位/64 位)兼容。

– Windows 更新导致某些功能失效:一个典型的例子是 Realtek 音频驱动程序被替换为通用驱动程序。运行疑难解答程序并重新安装正确的驱动程序包。如果“驱动程序”选项卡中提供此选项,您也可以回滚驱动程序。

– GPU 和游戏性能:过时的驱动程序会导致帧率下降、卡顿或崩溃。请使用GeForce Experience 或 AMD Adrenalin更新驱动程序,并在版本重大更新时执行全新安装。

– 由于存储驱动程序导致严重启动失败:以安全模式启动(加载通用驱动程序),然后从那里重新安装或恢复到以前的驱动程序以恢复系统。

其他备份方法:复制FileRepository(有细微差别)

一个简易的替代方法是从 DriverStore复制FileRepository 子文件夹。虽然这可以暂时解决问题,但并不能保证彻底重新安装,也无法解决依赖项或签名问题。尽可能优先使用DISM 或 PnPUtil导出驱动程序,这样可以保留软件包结构,并且在恢复时更加可靠。

第三方应用程序:应该使用哪些(以及应该避免使用哪些)

有些工具声称只需单击一下即可更新和备份驱动程序。请谨慎使用:有些工具会在安装过程中添加不需要的软件或安装非官方软件包。如果依赖这些工具,请仔细检查每个步骤并创建还原点。

受欢迎的经理和支持者

  • IOBIT 驱动程序助推器- 众所周知,它能够有效地检测并更新过时的驱动程序。安装时请小心谨慎,避免安装不必要的附加组件。
  • Snappy 驱动程序安装程序来源:免费、便携、免安装。它允许您将库存储在 USB 上,以便修复您的计算机。非常适合需要 避免过度使用软件.
  • AVG驱动程序更新程序:庞大的数据库和用户友好的向导。通常建议使用付费版本,以便充分利用它,尽管它只是快速检查一下。 免费 方向很好。
  • 司机轻松:界面简洁,数据库庞大,包含数百万个驱动程序。高级功能和自动化功能需要许可证,但作为一款检测器,它 非常溶剂.

以备份为重点的工具

  • 驾驶员指南工具包:识别已安装的驱动程序,建议更新,并协助备份。订阅选项包含支持和 大型数据库.
  • DriverMax的:超过 2 万个驱动程序集合。支持自动备份、恢复和更新。备份功能 免费.
  • 驱动程序备份 2!:开源、便携、快速。备份所有内容,包括 OEM 和第三方产品;非常适合 选择性认可.
  • 双人司机:老牌免费软件,支持图形界面和命令行。您可以保存详细信息并从 先前的副本.
  • 司机魔术师精简版:免费版本用于识别并从磁盘中提取驱动程序。付费版本添加了更新, 自执行副本 等等。
  • 驱动精灵:面向全面管理(备份、恢复和更新),并具有自动通知和撤销更改的功能。非常适合 诊断问题.
  • 驱动程序备份!:另一个开源替代方案,用于选择要复制的驱动程序以及保存位置。支持 OEM 或第三方筛选器和 简单使用.
  如何在 Windows 11 中移动(或不移动)任务栏

如果您的目标仅仅是创建可靠的备份,那么原生解决方案(DISM/PnPUtil)通常更安全。第三方工具则适用于硬件配置未知或需要自动查找版本信息的情况。

实用技巧和良好做法

准备几个小容量的U盘,而不是一个大容量的,并按用途分别贴上标签:驱动程序、BIOS、系统。这样更井然有序,也更节省时间。

- 不要将备份存储在即将格式化的同一驱动器上。请使用外置固态硬盘、USB 硬盘,甚至是可靠的SD 卡。

– 对备份进行版本控制:按日期或设备创建子文件夹,以便在更新出错时可以恢复。

– 请务必仔细检查导出的驱动程序是否与您当前正在使用的驱动程序一致,并确保它们运行正常。这将防止您将有问题的软件包带到新的安装环境中。

– 如果要将驱动程序集成到 ISO 镜像中,请确保版本和架构(家庭版/专业版,64 位/32 位)匹配。混用不同版本可能会导致安装过程中出现隐性错误。

超越驱动程序:完整的系统映像

驱动程序备份固然重要,但仅靠它无法保护您的整个环境。建议您创建一个包含 Windows、程序、驱动程序和数据的系统映像,并辅以预防性软件维护。像 AOMEI Backupper 或 EaseUS Todo Backup 这样的工具可以帮助您克隆系统、安排增量备份,并在灾难发生后几分钟内恢复系统,弥补仅靠驱动程序备份无法应对的不足。

如果由于关键驱动程序或系统损坏导致 Windows 无法启动,系统映像可以将系统恢复到之前的稳定状态,而无需从头开始重建所有内容。除了驱动程序备份之外,使用完整系统映像是最佳方案。

熟练掌握 PnPUtil 和 DISM 工具,就能让系统重装过程更加顺畅:您可以随时导出和恢复驱动程序,精确清理残留文件,如果您想更进一步,还可以创建包含驱动程序的 Windows ISO 镜像,实现干净无忧的安装。只需几个贴好标签的 U 盘、正确的厂商签名软件包以及最新的系统镜像,下次重装系统就能轻松搞定,无需再花费周末时间在网上搜索文件。

预防性软件维护
相关文章:
预防性软件维护:完整指南、流程、类型、最佳实践和当前技术