Microsoft bietet mehrere Reporting-Tools an, um das Troubleshooting von GPOs zu vereinfachen. Zuletzt brachte Windows 8 bringt einige Neuerungen für die Gruppenrichtlinienergebnisse in der Gruppenrichtlinienverwaltung (GPMC). Daneben gibt es das Kommandozeilen-Tool gpresult, als zusätzliche Option hat sich das PowerShell-Cmdlet Get-GPResultantSetOfPolicy etabliert.
Seit Microsoft mit Vista SP1 die Entwicklung des MMC-Snapin für RSoP eingestellt hat, sind die Gruppenrichtlinienergebnisse in der GPMC das bevorzugte grafische Tool für das GPO-Troubleshooting. Diese Berichtsfunktion zum Resultant Set of Policy (RSoP) erfuhr in Windows 8 ein moderates Update, das sich in einer geänderten Darstellung und einigen zusätzliche Informationen niederschlägt.
Wie bisher führt in der Gruppenrichtlinienverwaltung (GPMC) ein Wizard durch Erstellung von Berichten, mit denen sich die Anwendung von GPOs analysieren lässt. Das Ergebnis präsentiert sich nun in einer veränderten Darstellung.
Unter dem Reiter Zusammenfassung findet sich nur mehr eine komprimierte Übersicht, die über die Ergebnisse der letzten Ausführung von Computer- und Benutzerrichtlinien informiert.
Die unter Windows 7 an dieser Stelle noch vorhandenen Möglichkeiten, die Ausführung von GPOs nachzuverfolgen, bieten sich jetzt unter dem Reiter Details, der die bisherige Registerkarte Einstellungen ersetzt und diese mit den Informationen der vormaligen Zusammenfassung kombiniert. Wie gewohnt kann ein Drill-down an dieser Stelle folgende Fragen beantworten:
- Welcher Wert wurde für eine bestimmte Einstellung nach Ausführung aller GPOs tatsächlich gesetzt?
- Welches von mehreren rivalisierenden GPOs hat sich schließlich durchgesetzt?
- Welche Präzedenz haben konfligierende GPOs und welche Werte versuchen sie für bestimmte Einstellungen zu setzen?
- Welche GPOs wurden aus welchem Grund gar nicht ausgeführt?
- Wie haben sich WMI-Filter auf die Ausführung von GPOs ausgewirkt?
Über das Kontextmenü des Berichts lässt sich dieser als HTML-Datei exportieren, so dass er etwa auch auf PCs außerhalb der Domäne angesehen werden kann. Ein weiterer Befehl führt die Abfrage mit jenen Kriterien, die im Wizard festgelegt wurden, erneut aus.
Zusätzliche Daten in den neuen Berichten
In der Detailansicht bieten die Gruppenrichtlinienergebnisse nun zusätzliche Informationen. Eine davon betrifft die zur Ausführung von GPOs auf dem Client benötigte Zeit.
Sie findet sich bei den Daten zum Komponentenstatus, die bisher unter der Registerkarte Zusammenfassung angesiedelt waren. Die Zeitangaben bieten die Möglichkeit, eventuelle Performance-Probleme aufzuspüren (siehe dazu: Ausführung von GPOs beschleunigen).
Klickt man auf einen der Datum- und Uhrzeit-Links in der Spalte Letzter Prozess am, dann öffnet sich ein Dialog mit weiteren Informationen. Darunter findet sich etwa der Hinweis darauf, ob die Ausführung über einen Vorder- oder Hintergrundprozess erfolgt ist oder ob der Loopback-Modus aktiviert war. Außerdem sieht man, welcher Domänen-Controller für die Ausführung zuständig war.
Eine weitere Neuerung besteht darin, dass man nun erfährt, ob der Client über eine langsame oder schnelle Verbindung kommuniziert. Das ist deshalb von Interesse, weil nicht alle GPO-Operationen über limitierte Netzwerke ausgeführt werden.
Das gilt etwa für die Installation von Software oder die Umleitung von Ordnern. Als Slow Link gelten übrigens per Voreinstellung alle Netze mit einer Übertragungskapazität von weniger als 500 Kbit/s.
GPO-Ergebnisse mit gpresult ermitteln
Alternativ zur Gruppenrichtlinienverwaltung steht auf der Kommandozeile gpresult.exe zur Verfügung, um die Ausführung von GPOs zu überprüfen. All jene Kriterien, die man im grafischen Wizard Schritt für Schritt auswählt, legt man hier über Parameter fest:
/scope USER /scope COMPUTER | damit schränkt man die Auswertung auf Gruppenrichtlinien ein, die entweder der Computer- oder der Benutzerkonfiguration dienen |
/s | wie in GPMC können Reports in gpresult auch für Remote-PCs erzeugt werden, die man über diesen Parameter spezifiziert |
/r /v /z | Diese Parameter bestimmen, wie ausführlich der Report ausfallen soll. /r generiert nur die RSoP-Übersicht, bei /z ist der Bericht besonders detailliert. |
Egal wie ausführlich man die Gruppenrichtlinienergebnisse haben möchte, der Output auf der Konsole ist unübersichtlich und es fehlen die neuen Infos, beispielsweise die benötigte Zeit zur Abarbeitung der GPOs oder der Hinweis auf langsame Netzwerke.
Daher eignen sich die Schalter /r /v /z am ehesten, wenn man die Ausgabe von gpresult durch einen find-Filter schicken möchte. Auch die Option /x, mit der man den Output in eine XML-Datei schreibt, empfiehlt sich primär für die maschinelle Weiterverarbeitung der Daten.
Einen mit GPMC äquivalenten Report erhält man dagegen mit dem Schalter /H <dateiname>, der die Ausgabe von gpresult in eine HTML-Datei schreibt. Sie entspricht der bekannten Darstellung des GUI-Tools und enthält alle mit Windows 8 neu hinzugefügten Daten. Außerdem lassen sich dank der integrierten Scripts die einzelnen Sektionen auf- und zuklappen, die Popup-Fenster mit den Detailinformationen sind ebenfalls verfügbar.
Bei der Erstellung eines HTML-Reports ist zu beachten, dass man die Ausführlichkeit seiner Informationen nicht mit den Schaltern /r /v /z steuern kann. Vielmehr dürfen sie nicht mit /H oder /X kombiniert werden. Liegt bereits eine Ausgabedatei gleichen Namens vor, dann kann man mit /f erzwingen, dass sie überschrieben wird.
PowerShell: Get-GPResultantSetOfPolicy
Das Cmdlet Get-GPResultantSetOfPolicy bietet im Wesentlichen die gleichen Möglichkeiten wie gpresult.exe, nur dass der Aufruf anderen Konventionen folgt.
Ein auffälliger Unterschied besteht indes darin, dass die PowerShell-Variante erst gar keinen Konsolen-Output in Textform produziert, sondern über den Parameter -ReportType das Format XML oder HTML erzwingt. Letzteres erzeugt den gleichen Report wie gpresult oder die Gruppenrichtlinienverwaltung.
In der einfachsten Form ruft man das Cmdlet mit den Parametern für das Ausgabeformat und den Dateinamen auf, also zum Beispiel
Get-GPResultantSetOfPolicy -ReportType html -Path .\rep.html
Möchte man den Bericht für einen bestimmte Benutzer oder Computer erzeugen, dann gibt man diese über die Parameter -User bzw. -Computer an. Lässt man sie weg, nimmt das Cmdlet den aktuell angemeldeten Benutzer und den lokalen Rechner.