Es gibt Unmengen von Enterprise-Lösungen für Software Rollouts. Die Softwareverteilung mit GPO ist dagegen nur ein kleines und auch eingeschränktes Feature. Dennoch greifen viele Administratoren mangels Alternativen oder wenn es schnell gehen soll darauf zurück. Im folgenden Szenario beschreibe ich Step-by-Step den Ablauf der Verteilung eines MSI Pakets mithilfe von Gruppenrichtlinien.
GPOs bieten die Möglichkeit der Verteilung von Software auf Computer- oder Benutzerebene mit MSI Paketen (über SMB Freigabe).
Es werden folgende Bereitstellungsmethoden unterschieden:
- Zugewiesen (Benutzer- und Computerkonfiguration): Die Software wird ohne Benutzeraktion installiert
- Veröffentlicht (nur Benutzerkonfiguration): Das Paket wird in der Systemsteuerung zur Installation bereitgestellt oder wird automatisch installiert, sobald ein Programm mit der Dateierweiterung gestartet wird
Ausgangssituation
Meine Umgebung besteht aus einem Domain-Controller (Windows Server 2016), einem Client-Computer (Windows 10) und einem Programm (XMLNotepad), welches per Rollout verteilt werden soll. Achtung: Das MSI Paket ist eigens von Microsoft zur Verfügung gestellt und es lässt sich per GPO installieren. Nicht alle MSI Pakete können per GPO verteilt werden.
Erstellen eines Ordners und einer Netzwerkfreigabe
Zuerst erstellt man einen Ordner, in welchem das MSI Paket abgelegt werden soll. Dies kann in Windows Explorer oder in der Befehlszeile erfolgen.
New-Item -ItemType Directory -Name XML -Path c:\XML
In diesen Ordner wird nun das Programm kopiert.
Dann wird der Ordner freigegeben. Die Standard-Freigabeberechtigung lautet Jeder – Lesen. Das ist ausreichend.
New-SmbShare -Name XML -Path C:\XML
Erstellen einer Gruppenrichtlinie für die Verteilung von Software
Jetzt wird in der Gruppenrichtlinienverwaltungskonsole (gpmc.msc) auf dem Domain-Controller ein neues Gruppenrichtlinienobjekt (GPO) erstellt.
Rechte Maustaste auf Gruppenrichtlinienobjekte – Neu. Als Namen vergebe ich XML Notepad.
Dann klicke ich das GPO an und wähle Bearbeiten.
Ich navigiere zu Computerkonfiguration – Richtlinien – Softwareeinstellungen und klicke auf Softwareinstallation und wähle Neu – Paket.
Jetzt gebe ich den UNC Pfad der Ordnerfreigabe ein. Von dort wird der Client die Software installieren. Hier muss der UNC Pfad in Form von \\Servername\Freigabename angeben werden und nicht c:\xml\XmlNotepad.msi.
Als nächstes wähle ich Zugewiesen und klicke auf OK.
Das sieht gut aus.
Verknüpfen der Gruppenrichtlinie mit einer OU
Jetzt verknüpfe ich das GPO mit der OU, in welcher sich der oder die Computer befinden. Es ist nicht möglich die GPO mit dem Container Computers zu verknüpfen. Sollte keine OU für die Computer existieren so muss diese erstellt werden und alle Computer in diese OU verschoben werden.
Ich klicke das GPO mit der linken Maustaste an und ziehe es über die OU Workstations und lasse die Maustaste los. Danach klicke ich auf OK.
Fertig.
Testen der Gruppenrichtlinie
Mein Windows 10 Computer war bereits gestartet und ich bin als Benutzer Petra angemeldet. Ich führe gpupdate /force aus.
gpupdate /force
Nun kommt der Hinweis zum Neustart.
Nach dem Neustart befindet sich das Programm am Desktop.
Tipp wenn es nicht funktioniert: Spielen Sie alles mit dem Programm XmlNotepad nach. Sollte wie im Artikel beschrieben die Installation klappen, dann liegt es an Ihrem MSI Paket. Dieses muss sich “silent” installieren lassen. Tut es das nicht, dann wird nichts installiert.
Zum Nachspielen das MSI Paket als Download: XmlNotepad
Categories: Windows Server
Ich hätte eine Frage: Wie wäre der korrekte oder empfohlene Weg bei Aktualisierungen, z. B. Firefox, Google Chrome etc.? Ursprüngliches Paket löschen, neues Paket in die bestehende GPO einpflegen oder über das ursprüngliche Paket dort belassen und das neue Paket/die neue Version über die Registerkarte “Aktualisierungen” hinzufügen? Oder doch noch anders?
LikeLike
hey mich würde interessieren wie du die msi datei erstellt hat mit deiner notepad.msi funktioniert es aber mit meiner pycharm.msi die ich mit MSI Wrapper erstellt habe klappt es nicht… hast du mögliche Gründe dafür? Vielen Dank für das tolle tutorial !
LikeLike
Hallo, die msi muss so programmiert sein. Lg
LikeLike