Freigeben über


Erstellen eines Inventars der installierten Treiberpakete

In diesem Artikel erfahren Sie, wie Sie einen Bestand installierter Treiberpakete von Drittanbietern erstellen und unnötige Treiber identifizieren, die Sicherheitsrisiken erhöhen könnten. Sie erfahren, wie Sie PnPUtil und PowerShell verwenden, um Ihr System zu überwachen und unerwünschte Treiberpakete zu entfernen.

Warum reduzieren Sie nicht benötigte Treiberpakete?

Warum reduzieren Sie Ihren Treiber-Anteil? Jeder unnötige Treiber auf Ihrem System:

  • Stellt potenzielle Sicherheitsrisiken dar.
  • Verbraucht Arbeitsspeicher und Systemressourcen.
  • Kann zu Systemabstürzen führen.

Indem Sie nur wesentliche Faktoren beibehalten, verbessern Sie sowohl Sicherheit als auch Stabilität.

Berücksichtigen Sie bei der Bewertung der Treibersicherheitsrisiken alle Treiberpakete , die auf dem System vorhanden sind, unabhängig davon, ob sie auf Geräten installiert sind. Wenn Sie wissen, welche Treiberpakete vorhanden sind (und welche Drittanbieter im Vergleich zu Microsoft sind), können Sie unerwünschte oder veraltete Treiberpakete identifizieren, die Sicherheitsrisiken darstellen könnten.

Ein Ansatz besteht darin, einen anfänglichen Bericht über installierte Treiberpakete auf einem neuen System zu erstellen und dann den Bericht in regelmäßigen Abständen erneut auszuführen, um nach unerwarteten Treiberpaketen zu suchen.

Inventar der installierten Treiberpakete – PnPUtil

PnPUtil ist in Windows integriert und ist das empfohlene Tool zum Verwalten von Treiberpaketen. Es sind keine zusätzlichen Downloads erforderlich.

Nächster Schritt: Lernen Sie die grundlegenden Befehle im folgenden Abschnitt kennen, oder zeigen Sie erweiterte PnPUtil-Beispiele an.

PnPUtil /enum-drivers

Verwenden Sie enum-drivers, um Treiberpakete von Drittanbietern im Treiberspeicher aufzulisten.

pnputil /enum-drivers

Verwenden Sie /files, um alle Treiberpakete von Drittanbietern aufzulisten und die zugehörigen Treiberdateien anzuzeigen.

pnputil /enum-drivers /files

Exportieren von Treiberinventarberichten mit PnPUtil

Verwenden Sie die Optionen /format und /output-file, um Berichte über den Footprint des installierten Treibers zu erstellen. Verwenden Sie diese Optionen, um das Erfassen der Treiberpakete auf dem System zu skripten. Verwenden Sie keine Skripts, um die Standardausgabe oder die Option "text" /format zu verarbeiten, da diese Ausgabe geändert und lokalisiert werden kann. Die Ausgabe unterscheidet sich je nach installierter Sprache auf dem System.

/format - Formatieren der Ausgabe als Text, XML oder CSV. /output-file [<filename>] - In optionalem Dateinamen ausgeben.

In diesem Beispielbefehl wird das PnPUtil-Hilfsprogramm verwendet, um alle Treiberpakete von Drittanbietern auflisten, die derzeit im System vorhanden sind. Sie enthält Informationen zu den zugehörigen Treiberdateien und gibt die Ergebnisse im CSV-Format (Comma-Separated Values) aus. Die Ausgabe wird in einer Datei namens MyDriverFileInventory.CSV gespeichert.

pnputil /enum-drivers /files /format CSV /output-file MyDriverFileInventory.CSV

Verwenden von PowerShell-Skripts zum Abrufen zusätzlicher Informationen

Verwenden Sie diese PowerShell-Skripts, um bestimmte Treiber auf Ihrem System zu finden:

Beispiel 1: Suchen nicht verwendeter Treiberpakete

Dieses Skript identifiziert OEM-Treiberpakete, die nicht auf Geräten installiert sind (Geräteanzahl = 0).

[xml] $pnputilOutput = pnputil /enum-drivers /devices /format xml
$pnputilOutput.pnputil.driver | where {$_.devices.count -eq 0}

Beispiel 2: Suchen von Treiberpaketen mit bestimmten Dateitypen

Dieses Skript findet alle OEM-Treiberpakete, die Dateien einer bestimmten Dateierweiterung enthalten, z. B. .sys.

[xml] $pnputilOutput = pnputil /enum-drivers /devices /files /format xml
$pnputilOutput.pnputil.driver | where {$_.Files.File.Name -like "*.sys"}
$sysDrivers = $pnputilOutput.pnputil.driver | Where-Object {$_.Files.File.Name -like "*.sys"}
Write-Host "Found $($sysDrivers.Count) driver(s) with .sys files.`n"

Windows-Images und virtuelle Festplatten

Verwenden Sie für Windows-Imagedateien (WIM)-Dateien oder virtuelle Festplatten (VHD- oder VHDX-Dateien) zuerst den DISM-Befehl (Deployment Image Servicing and Management)./Mount-Image

Mount-WindowsImage -ImagePath "D:\Images\Windows11.vhdx" -Index 1 -Path "C:\Mount"

Verwenden Sie dann das Get-WindowsDriver Commandlet , um Informationen anzuzeigen. Geben Sie den verwendeten Bereitstellungspfad an.

Get-WindowsDriver -Path "C:\Mount" 

Das Get-WindowsDriver Commandlet kann auch Treiber in der gestarteten Windows-Umgebung mithilfe der -Online Option auflisten.

Get-WindowsDriver -Online

Andere Treiber-Tools

Andere Tools sind verfügbar, haben jedoch Einschränkungen. Verwenden Sie stattdessen PnPUtil und das Get-WindowsDriver Commandlet .

Die Geräte-Manager-GUI stellt Ansichten von Treiberinformationen bereit, die nach Gerät organisiert sind (Ansicht ->Treiber nach Gerät) oder Geräte, die nach Treiberinformationen organisiert sind (Ansicht ->Geräte nach Treiber). Diese Informationen umfassen den Gerätetyp, den Gerätestatus, den Hersteller, gerätespezifische Eigenschaften und Informationen zu den Treiberdateien für ein bestimmtes Gerät. Verwenden Sie "Ansicht> -Ausgeblendete Geräte anzeigen", um zusätzliche Informationen anzuzeigen. Weitere Informationen finden Sie unter Verwenden des Geräte-Managers.

Das Tool "Systeminformation(Msinfo32.exe) listet Treiber unter Softwareumgebung, Systemtreiber auf. Die angezeigten Spalten können sortiert werden, sodass der Treiberstatus oder -typ gruppiert werden kann. Weitere Informationen finden Sie unter Description of Microsoft System Information (Msinfo32.exe) Tool. Msinfo32 bietet keine Möglichkeit zum Auflisten und Analysieren von Treiberpaketen. Verwenden Sie stattdessen PnPUtil .

Obwohl driverquery in Windows integriert ist, kann es irreführende Ausgaben erzeugen und wird nicht empfohlen. Verwenden Sie stattdessen die fähigere PnPUtil .

Entfernen von Treibern mit PnPUtil

Entfernen Sie unnötige Treiber, indem Sie PnPUtil verwenden, um Sicherheitsrisiken zu reduzieren und die Systemzulässigkeit zu erhöhen. Stellen Sie vor dem Entfernen eines Treibers sicher, dass sie für den Systembetrieb nicht erforderlich ist.

Wenn Sie feststellen, dass ein Treiber sicher entfernt werden kann, verwenden Sie PnPUtil, um ihn zu entfernen. Verwenden Sie einen nicht kritischen PC, um zu testen, dass alle Hardware- und Softwarefunktionen ordnungsgemäß funktionieren, nachdem der Treiber entfernt wurde. Verwenden Sie wie immer Sicherungen, und richten Sie einen Systemwiederherstellungspunkt ein.

Suchen Sie den OEM-Treibernamen, z. B. oem42.inf, und verwenden Sie den folgenden Befehl, um ihn zu löschen:

pnputil /delete-driver oem42.inf /uninstall 

Erläuterung von Parametern:

/delete-driver <INF>: Gibt den zu entfernenden Treiber an.

/uninstall: Deinstalliert den Treiber von allen Geräten, die ihn derzeit verwenden.

Von Bedeutung

Stellen Sie sicher, dass der Treiber für den Systemvorgang nicht wichtig ist, bevor Sie ihn entfernen. Das Entfernen wesentlicher Treiber kann zu Systeminstabilität und Datenverlust führen.

Siehe auch