Windows Server
 Computer >> コンピューター >  >> システム >> Windows Server

Windows 10でデバイスドライバーをバックアップ(エクスポート)&復元する方法|PowerShell・DISM・PNPUtil活用ガイド

Windowsを再インストールまたはクリーンインストールした後、PCに搭載されている各デバイス用の最新ドライバーを改めてインストールする必要があります。通常は必要なドライバーを手動で探してダウンロードし、1つずつインストールしなければなりませんが、実はもっと効率的な方法があります。Windows 10や8.1では、再インストール前にインストール済みの全ドライバーをバックアップ(エクスポート)しておき、そのバックアップを使ってクリーンなWindows環境へすべてのドライバーを一括で素早く導入できるのです。

この記事では、Windowsに標準搭載されているツール(DISMpnputil.exe、PowerShellのExport-WindowsDriverコマンドレット)だけを使って、ドライバーをバックアップ・復元する基本の手順を詳しく解説します。

目次

  • PowerShell:Export-WindowsDriverコマンドレットでドライバーをバックアップ
  • DISMを使ってWindows 10のドライバーをバックアップ
  • PNPUtilでインストール済みデバイスドライバーをエクスポート
  • Windows 10でデバイスドライバーを復元するには?

PowerShell:Export-WindowsDriverコマンドレットでドライバーをバックアップ

Windows 10およびWindows Server 2019/2016では、PowerShellのExport-WindowsDriverコマンドレットを使うことで、ドライバーストアに登録されているサードパーティ製(Microsoft以外)のドライバーをすべて直接エクスポートできます。このコマンドレットを活用すれば、Windowsの再インストール作業を大幅に簡略化でき、作業時間も短縮できます。以前はドライバーのバックアップを作成するために、DoubleDriverやDriverMaxといったサードパーティ製ツールが必要でしたが、今では標準機能だけで完結します。

現在稼働中のWindows 10(オンラインイメージ)からサードパーティ製ドライバーをすべてエクスポートするには、管理者権限でPowerShellを開き、以下のコマンドを実行します。

Export-WindowsDriver –Online -Destination c:\export-drivers

注意: ドライバーファイルは c:\export-drivers フォルダーに保存されます。このフォルダーは事前に作成しておいてください。

マウントしたオフラインのWindowsイメージからドライバーを抽出したい場合は、次のようにコマンドを変更します。

Export-WindowsDriver -Path c:\win_image -Destination c:\export-drivers

コマンドレットを実行すると、画面にエクスポートされたサードパーティ製ドライバーの一覧が表示されます。これにより、C:\Windows\System32\DriverStore\FileRepository\ 内のWindowsドライバー一式のバックアップが取得できます。各ドライバーとその関連ファイルは、INFファイル名を基準とした個別フォルダーごとに保存されます。

Windows 10でデバイスドライバーをバックアップ(エクスポート)&復元する方法|PowerShell・DISM・PNPUtil活用ガイド

各フォルダーにはドライバーのインストールに必要なファイルがすべて含まれています。*.inf ファイルだけでなく、関連する *.sys*.dll*.exe なども一緒に保存されます。Export-WindowsDriverコマンドレットは、ドライバーのINFファイル内の CopyFiles セクションに記載された情報をもとに、インストールに必要なファイルリストを自動的に構築します。

Windows 10でデバイスドライバーをバックアップ(エクスポート)&復元する方法|PowerShell・DISM・PNPUtil活用ガイド

ドライバー一覧を見やすい形で表示する

保存したドライバーを「クラス名」「ベンダー」「バージョン」付きの一覧として確認したい場合は、以下の2段階のコマンドを実行します。

$BackupDrv = Export-WindowsDriver -Online -Destination c:\export-drivers

続けて、結果を表形式で表示します。

$BackupDrv | Select-Object ClassName, ProviderName, Date, Version | Sort-Object ClassName

実行すると、ドライバーのクラス、メーカー、バージョン、日付が整理された表が表示されます。

Windows 10でデバイスドライバーをバックアップ(エクスポート)&復元する方法|PowerShell・DISM・PNPUtil活用ガイド

エクスポートしたドライバーの情報はCSVファイルとして保存することも可能です。

$BackupDrv | Select-Object ClassName, ProviderName, Date, Version | Export-Csv c:\ps\backup_drivers_list.txt

特定のデバイスクラスやベンダーのドライバーだけを絞り込む

ClassName属性を使えば、特定のデバイスクラスのドライバーだけを一覧表示できます。たとえばプリンタードライバーのみを表示するには、次のコマンドを実行します。

$BackupDrv | where { $_.classname -like "printer" }

特定のベンダー(メーカー)のドライバーだけを表示したい場合は、以下のコマンドを使用します。

$BackupDrv | Where{ $_.ProviderName -Match "NVIDIA"}

Windows 10でデバイスドライバーをバックアップ(エクスポート)&復元する方法|PowerShell・DISM・PNPUtil活用ガイド

PCモデル名ごとのフォルダーにバックアップを保存する

ドライバーの保存先フォルダーをPCのモデル名で命名すれば、複数機種のドライバーを管理しているネットワーク共有フォルダーへ整理してバックアップすることもできます。その場合は次のコマンドを使用します。

Export-WindowsDriver -Destination "\\mun-fs01\drivers\desktop\$((Get-WmiObject -Class win32_computersystem).Model)" -Online

Windows 10でデバイスドライバーをバックアップ(エクスポート)&復元する方法|PowerShell・DISM・PNPUtil活用ガイド

このように実行すると、PCのモデル名が付いたフォルダーが自動的に作成され、そこへすべてのドライバーがエクスポートされます。

DISMを使ってWindows 10のドライバーをバックアップ

DISM.exeを使っても、ドライバーのバックアップやWindowsイメージへの取り込みが可能です。すべてのドライバーを C:\export-drivers フォルダーへエクスポートするには、管理者権限のコマンドプロンプトを開き、以下のコマンドを実行します。

dism /online /export-driver /destination:C:\export-drivers

実行例:

エクスポートしています 1/24 - oem0.inf: ドライバー パッケージは正常にエクスポートされました。

Windows 10でデバイスドライバーをバックアップ(エクスポート)&復元する方法|PowerShell・DISM・PNPUtil活用ガイド

この例では、DISMツールによって24個のドライバーが指定フォルダーへ正常にエクスポートされました。

PNPUtilでインストール済みデバイスドライバーをエクスポート

Windowsに標準搭載されている PNPUtil.exe ツールでも、PC上のデバイスドライバーを管理できます。このツールは通常、Windowsへのドライバー追加・削除によく使われます(以前の記事では、ディスク容量を節約するために古い未使用ドライバーをドライバーストアから削除する方法を紹介しました)。さらにPNPUtilは、Windowsのドライバーリポジトリからのエクスポートにも利用できます。

管理者権限のコマンドプロンプトを開き、以下のコマンドを実行してください。

pnputil.exe /export-driver * c:\export-drivers

Windows 10でデバイスドライバーをバックアップ(エクスポート)&復元する方法|PowerShell・DISM・PNPUtil活用ガイド

エクスポートしたフォルダー内のドライバーは、PowerShell・PNPUtil・DISM(Windowsイメージへのドライバー統合)を使って手動で他のデバイスへ展開できるほか、MDTやSCCMなどを利用して自動展開することも可能です。

特定のドライバーだけをエクスポートする方法

pnputilでは、特定のデバイスドライバーのみをエクスポートすることもできます。その場合は、対象ドライバーのINFファイル名を把握しておく必要があります。

まず、インストール済みドライバーの完全なリストを取得します。

pnputil.exe /enum-drivers

PowerShellでフィルタリングしても構いません。ここではRealtek製NIC(ネットワークアダプター)のドライバーだけをエクスポートしたいとします。

Get-WindowsDriver -Online | where { ($_.ProviderName -like "Realtek") –and ($_.ClassName -like "Net")}

表示されたINFファイル名(oem5.inf)をコピーし、以下のコマンドでドライバーファイルをエクスポートします。

mkdir c:\drivers\realtek
pnputil.exe /export-driver oem5.inf c:\drivers\realtek

これで、NICのINFファイル(rt640x64.inf)とそれに必要なファイル一式がエクスポートされました。

Windows 10でデバイスドライバーをバックアップ(エクスポート)&復元する方法|PowerShell・DISM・PNPUtil活用ガイド

Windows 10でデバイスドライバーを復元するには?

バックアップしておいたドライバーフォルダーを使えば、クリーンインストール直後のWindows(または再インストール後のWindows)にドライバーを導入できます。

個別のドライバーをインストールする

特定のドライバーだけをインストールしたい場合は、INFファイルを右クリックして「インストール」を選択します。

Windows 10でデバイスドライバーをバックアップ(エクスポート)&復元する方法|PowerShell・DISM・PNPUtil活用ガイド

また、デバイスマネージャーから特定のデバイスドライバーを更新することもできます。デバイスマネージャー(devmgmt.msc)を開き、ドライバーを入れ替えたいデバイスを選択して「ドライバーの更新」→「コンピューターを参照してドライバーを検索」をクリックします。バックアップ済みドライバーフォルダーへのパスを指定し、サブフォルダー内のINFファイルまで自動的に検索する場合は「サブフォルダーも含める」にチェックを入れてください。

Windows 10でデバイスドライバーをバックアップ(エクスポート)&復元する方法|PowerShell・DISM・PNPUtil活用ガイド

PowerShellスクリプトで全ドライバーを一括インストール

指定フォルダー内のすべてのドライバーを一度にインストール(インポート)するには、以下のPowerShellスクリプトが便利です。

$drvinffiles = Get-ChildItem -Path "C:\export-drivers\" -Filter "*.inf" -Recurse -File
foreach($drvinffile in $drvinffiles){
$drvinffile.FullName
pnputil.exe -i -a "$drvinffile.FullName"
}

このスクリプトは、指定ディレクトリ内のすべてのフォルダーを順番に走査し、見つかったすべてのINFファイルを検出して、PNPUtilツール経由でドライバーストアへインストールしていきます。

さらに、Windows 10のpnputilなら、ワンライナーコマンドだけで指定フォルダー(サブフォルダー含む)内の全ドライバーをインストールできます。

pnputil.exe /add-driver C:\export-drivers\*.inf /subdirs /install

DISMでオフラインイメージへドライバーを統合する

DISMツールのAdd-Driverパラメーターを使えば、バックアップフォルダー内の全ドライバーをオフラインのWindowsイメージへ一括インポートすることもできます(この例では、署名されていないドライバーのインストールも許可しています)。

DISM /image:c:\win_image /Add-Driver /Driver:C:\export-drivers /Recurse /ForceUnsigned

なお、DISMによるドライバーの統合(スリップストリーム)は、オフラインのWindowsイメージに対してのみ実行できます(参考:Windows 7のインストールメディアにUSB 3.0ドライバーを追加する方法)。

まとめ: Windowsを再インストールする前に、必ずインストール済みドライバーのバックアップを取っておきましょう。標準ツールだけで簡単に実行でき、再インストール後のセットアップ作業が格段に楽になります。

  1. Windowsレジストリのバックアップと復元方法を徹底解説

    レジストリは、コンピューターにとって「脳」のような役割を果たす重要な存在です。Windowsのコンポーネント、サービス、アプリケーションなど、システムのほぼすべてに関わる構成情報や設定がここに格納されています。 レジストリを理解するうえで押さえておきたい基本概念は「キー」と「値」の2つです。キーはフォルダのようなオブジェクトで、レジストリエディターの画面上でも実際にフォルダと同じように表示されます。一方、値はフォルダ内のファイルのようなもので、具体的な設定内容が記録されています。 なぜレジストリのバックアップが必要なのか Windowsパソコンの設定に大きな変更を加えたい場合、多くはWindo

  2. Windowsタスクバーのピン留め項目をバックアップ・復元する方法

    よく使うWindowsアプリをタスクバーにピン留めしておくと、素早くアクセスできてとても便利です。しかし、パソコンの乗り換え時や、何らかの原因でピン留めが消えてしまった場合でも、バックアップさえあれば簡単に復元できます。この記事では、Windowsのピン留めされたタスクバーアプリをバックアップする方法を詳しくご紹介します。 Windowsのピン留めされたタスクバー項目をバックアップする方法 Windowsパソコンには、バックアップに必要な情報がすべて格納された専用フォルダが存在します。 ステップ1: Win + Rキーを押して「ファイル名を指定して実行」を起動し、以下のファイルパスをテキストボ