Die Inventarisierung der im eigenen Netzwerk eingesetzten Hard- und Software ist wohl nicht ganz so unbeliebt wie die notwendigen Backups, gehört aber wegen des damit in der Regel verbundenen Aufwands sicher auch nicht zu den beliebtesten Aufgaben der IT-Mitarbeiter. Wer sich auf dem Markt umschaut, findet eine ganze Reihe von Anwendungen speziell für die Netzwerkinventarisierung. Dabei setzen viele dieser Angebote auf spezielle Agenten, die zunächst auf die Systeme im Netzwerk ausgerollt und installiert werden müssen.
Doch auch die PowerShell bietet sich für diese Zwecke an. Wer solche Skripte selbst aufsetzen möchte, muss sich zunächst über einige grundlegende Dinge Gedanken machen. Da ist zunächst einmal die Entscheidung, welche Ausprägung dieser Software zum Einsatz kommen soll: Microsoft lässt immer wieder verlautbaren, dass die PowerShell in der Version 5.1, wie sie aktuell auf den Windows-10-Versionen und auch auf dem Windows Server 2019 noch vorinstalliert mitkommt, eigentlich nicht mehr weitentwickelt wird. Man wolle sich ganz auf die Plattform-übergreifende PowerShell Core (aktuelle Version 6.2.3) konzentrieren.
Insgesamt ist der Funktionsumfang der PowerShell 5.1, was reine Windows-Systeme betrifft, aber noch weitaus umfangreicher und Microsoft hat auch für Windows Server 2019 weitere neue Cmdlets in diesem Bereich eingeführt.
Gerade wenn es jedoch um das Remote-Arbeiten geht, zeigt sich die neue Core-Version als etwas besser implementiert und daher sollten Sie entsprechende Skripte nach Möglichkeit so gestalten, dass diese auf beiden Ausprägungen problemlos laufen. Das betrifft vor allen Dingen die für die Inventarisierungsaufgaben so wichtigen Remote-Zugriffe: Microsoft entfernt in der Zwischenzeit viele WMI-Kommandos und -Aufrufe und die PowerShell 6 unterstützt WMI-Cmdlets überhaupt nicht mehr.
Der komplette Artikel ist nur für Abonnenten des ADMIN Archiv-Abos verfügbar.