Windows ドライバーストアから古くて使われていないドライバーを削除する方法

Windows 上で古くて残っているドライバーをどうやってクリアするかを考えるのは、特にディスク容量が増えてきたり、単に乱雑になっているときには面倒な作業です。時間が経つにつれて、Windows はドライバーの古いバージョンを DriverStore ( %WINDIR%\System32\DriverStore\FileRepositoryにあります) に保存します。これは主に、ドライバーの更新がうまくいかなかった場合に以前のバージョンにロールバックできるようにするためです。しかし、欠点は何でしょうか。古いバージョンが蓄積され、必要以上に多くのスペース (時には数十ギガバイト) を占めてしまうのです。これはかなりおかしいことです。そこで、このガイドでは、組み込みツールと便利なサードパーティ製のオプションを使用して、整理するための実用的な方法をいくつか紹介します。目標は、ディスク容量を解放し、整理された状態を保ち、Windows が不要になったドライバーを保持しないようにすることです。コマンドラインでの楽しい操作や注意事項がいくつかあり、ドライバー ストアをスリムに保つ方法が明確にわかると思います。

Windowsで古いドライバーを修正してディスク容量を節約する方法

PowerShellを使ってWindowsで古いドライバーを見つけて削除する方法

PowerShellとWMIを使えば、DriverStoreにインストールまたは保存されているすべての署名済みドライバーの包括的なリストが得られるため、非常に信頼性が高いツールです。ドライブが古いバージョンのドライバーでいっぱいになっていることに気づいたら、ここを確認してください。

これらのコマンドを実行すると、インストールされているすべてのドライバーが表示され、古いものを選択して削除できます。コマンドはGet-WmiObject Win32_PnPSignedDriverデバイス名、ドライバーのバージョン、日付などの詳細情報を出力します。これをわかりやすく表示するには、Out-GridViewにパイプしてください。

Get-WmiObject Win32_PnPSignedDriver | select DeviceName, DriverVersion, DriverDate, InfName | Out-GridView

NVIDIA、AMD、Realtek などのサードパーティ製ドライバーの場合は、Get-WindowsDriverコマンドレットを使用できます。

Get-WindowsDriver –Online | select Driver, ClassName, ProviderName, Version, Date | Out-GridView

古いドライバーや重複したドライバーを特定したら、次の方法で手動で削除できますpnputil.exe

pnputil.exe /remove-device oemXXX.inf

場合によっては、ドライバーがアンインストールを拒否すると強制的に切り替えが必要になります。

pnputil.exe /remove-device oemXXX.inf /force

補足:起動に不可欠なドライバーや必須のシステムコンポーネントを削除すると、非常に危険な状況になる可能性があるため、細心の注意を払ってください。削除する前に、ドライバー情報で必ずBootCritical=Trueになっていることを確認してください。

利便性のため、ドライバー情報をテキストファイルにエクスポートすると、古いドライバーを見つけやすくなります。以下のコマンドを実行してください。

dism /online /get-drivers /format:table > c:\drivers_list.txt

それをExcelで開き、デバイスでフィルタリングし、日付またはドライバー名で並べ替えます。古いバージョンをハイライト表示し、=CONCATENATE("pnputil.exe -d ", A2)アンインストールコマンドを生成するような簡単なコマンドを作成します。

その後、これらのコマンドをバッチファイルにコピーするか、コマンドプロンプトで直接実行できます。これにより、古いNVIDIAドライバーを中心に8GBほどのかなりの容量を節約できました。

スクリプトがお好きな場合は、RemoveOldDuplicateDrivers.ps1スクリプトがこのプロセス全体を自動化し、どのドライバーを安全に削除できるかをフラグ付けします。

ディスククリーンアップを使用してWindowsの古いドライバーを削除する

これは、一見すると分かりにくいのですが、Windows に組み込まれているディスク クリーンアップ(cleanmgr.exe) は、特に最近の Win10/11 ビルドでは、ドライバーのクリーンアップを処理できるようになりました。

試してみるには:

  1. Win+Rを押して、入力しcleanmgr、Enter を押します。
  2. メインのシステムドライブ (通常は C:) を選択します。
  3. 「システム ファイルのクリーンアップ(管理者権限が必要になる場合があります)」をクリックします。
  4. リストをスクロールして、デバイス ドライバー パッケージを確認します。
  5. 「OK」をクリックして、そのまま放置します。

このプロセスにより、Windows Updateや手動でインストールした古いバージョンのドライバーが削除され、不要なファイルが大幅に整理されます。ただし、クリーンアップ後はデバイスマネージャーの「ロールバック」ボタンが無効になるため、古いドライバーに簡単に戻すことはできません。また、使用されていないドライバーや壊れたドライバーは削除されませんので、ご注意ください。これらのドライバーは手動で削除する必要があります。

NirSoft の DevManView を使用してドライバーを管理する

視覚的に操作するのが好きで、コマンドラインで操作するのが面倒な方には、DevManViewがおすすめです。接続されているかどうかに関係なく、すべてのドライバーがフラットなリストで表示されるので、古いものや不要なものを簡単に見つけることができます。

  1. ツールをダウンロードし、解凍して実行します。
  2. オプション メニューで、「プラグ アンド プレイ非対応ドライバーの表示」「接続されたデバイスのマーク」を有効にして、全体像を把握できるようにします。
  3. 古くなったものを確認するには、接続ステータスまたはドライバーの日付でリストを並べ替えます。
  4. 不要になったドライバーを特定し、選択して「無効にする」をクリックします。PCを再起動します。
  5. 再起動後、戻って無効なドライバーを選択し、完全にアンインストールします。

注意:Windowsの機能の一部であるドライバーや起動に不可欠なドライバーを無効にすると、問題が発生する可能性があります。デバイスリストにあるドライバーのうち、もはや必須ではないドライバーにのみ、この設定を使用してください。

結局のところ、これらのツールの使い方に慣れれば、古いドライバーの削除はそれほど難しくありません。ただし、大きな変更を加える前に、特にコマンドラインツールやスクリプトを使用する場合は、バックアップを取ることをお勧めします。Windows によっては、最初の起動で空き容量が確保されなかったり、再起動を1~2回必要としたりすることがあります。少し奇妙に感じるかもしれませんが、よくあることです。

まとめ

  • PowerShell を使用してドライバーを一覧表示し、pnputil を使用して古いドライバーを手動で削除します。
  • 「デバイス ドライバー パッケージ」チェックボックスをオンにしてディスク クリーンアップを実行します。
  • より視覚的な管理アプローチにはDevManViewをお試しください
  • 必ず最初にバックアップを行ってください。ドライバーの削除はうまくいかないことがあります。

まとめ

古いバージョンのドライバーを削除すると、ディスク容量を解放し、システムを整理するのに役立ちます。もちろん、削除するドライバーは必ず二重チェックをしてください。ハードウェアや起動プロセスに不可欠なドライバーもあるかもしれません。ある環境では問題なく動作しましたが、別の環境ではドライバーのせいでシステムの起動がおかしくなったことがありましたので、慎重に行ってください。これらの方法は、慣れてしまえばかなり簡単です。この方法が、誰かのメモリ節約やドライバー管理の負担軽減に役立つことを願っています。