Software-Inventarisierung mit der PowerShell

Datenschnüffler

Die PowerShell bietet mehrere Möglichkeiten des Zugriffs auf die installierte Software. Da sie eine Vielzahl von Schnittstellen unterstützt, haben Administratoren Wahlfreiheit bei der Datensammlung. Je nach Betriebssystem und eigener Zielsetzung kann die Methode unterschiedlich ausfallen. Die Zugriffsverfahren lassen sich zudem kombinieren und die Ergebnismengen an die Ausgaberoutinen übergeben. Von datenbankgestützter Inventarisierung bis zu einem per E-Mail versandten HTML-Report sind alle Möglichkeiten gegeben.
Das Asset- & Lifecycle-Management bildet die Basis für viele wichtige IT-Management- wie auch kaufmännische Aufgaben. Im Juli-Heft widmet sich ... (mehr)

Seit Windows NT bietet der Klassenverbund "Windows Management Instrumentation" (WMI) Administratoren ein Schnittstellenreservoir auf Hardware, Software, Infrastruktur und Verzeichnisdienste. Zwei Klassen sind bei der Übersicht über installierte Software von Interesse. Zunächst die Systembibliothek "Win32_Product". Deren Nutzung verlangt keine zusätzliche Installation von Komponenten. Auch ist "Win32_ Product" auf Client- und Serversystemen von Windows verfügbar. Eine Übersicht über Attribute, die für einen Report nutzbar sind, liefert folgender Befehl:

> Get-WmiObject -class win32_product | Get-Member -MemberType Properties ;

Machen Sie sich nun die Filtermöglichkeiten der PowerShell zunutze, können Sie beispielsweise einen herstellerspezifischen Report erstellen. Alle installierten Programme des Herstellers liefert die Pipeline durch

> get-WmiObject -class win32_product | where-Object -FilterScript {$_.vendor -eq "Microsoft Corporation"}

Die andere nutzbare WMI-Klasse für die Software-Inventarisierung ist hingegen keine Systembibliothek. "Win32Reg_Add-RemovePrograms" wird nur während der Installation eines SMS/SCCM-Clients geladen. Eine Abfrage ohne eine SMS/SCCM-Client-Installation führt zur Fehlermeldung "Ungültige Klasse". Ist "Win32Reg_AddRemovePrograms" allerdings verfügbar, ist die Performance deutlich höher als bei der die Geduld strapazierenden Klasse "Win32_product".

Obwohl durch sehr umfassende Zugriffsmöglichkeiten und Kompatibilität zu alten Betriebssystemen ausgezeichnet, gibt es einige gravierende Nachteile bei der Verwendung von WMI:

- Die WMI-Schnittstelle ist allein MSIbasiert, Nuget oder andere Paket-Manager werden nicht berücksichtigt.

- WMI ist eine sehr alte Technologie, basierend auf DCOM. Fernabfragen sind zwar möglich, setzen aber Firewall-Ausnahmen

...

Der komplette Artikel ist nur für Abonnenten des ADMIN Archiv-Abos verfügbar.

comments powered by Disqus

Artikel der Woche

Loadtests ohne Server

Für Loadtests der eigenen Server bietet sich die Cloud an, denn kurz getaktet lassen sich dort viele Rechnerinstanzen starten, die das eigene Budget nur wenig belasten. Noch flexibler, günstiger und besser skalierbar sind Tests mit einer Serverless-Infrastruktur wie AWS Lambda. Wir führen vor, wie Sie dort mit Serverless Artillery eigene Loadtests starten. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Container

Wie setzen Sie Container ein?

  • Gar nicht
  • Docker standalone
  • Docker mit Kubernetes
  • Docker mit Swarm
  • Docker mit anderem Management
  • LXC/LXD
  • Rocket
  • CRI-O auf Kubernetes
  • Container auf vSphere
  • Andere (siehe Kommentare auf der Ergebnisseite)

Google+

Ausgabe /2018

Microsite