Ich erstelle kurzlebige Windows Server-VMs auf AWS und möchte eine Liste der Software installieren, die beim ersten Start unbeaufsichtigt ist. Zu diesem Zweck führe ich beim Start ein Bootstrap-Skript aus, mit dem Chocolatey und anschließend einige benutzerdefinierte Choco-Pakete installiert werden. Das System wird beim Start meiner Domain hinzugefügt und ich weise das Startskript über ein Gruppenrichtlinienobjekt zu. Ich kann bei Bedarf auch andere GP-bezogene Elemente erstellen.
Das Skript läuft einwandfrei, aber das Problem ist, dass viele der über choco ausgeführten Installer eine interaktive Benutzersitzung benötigen, damit sie im Session0-Kontext, in dem das Startskript ausgeführt wird, nicht ausgeführt werden können .
Ich kann eine der folgenden Arbeiten sehen:
- Erstellen Sie eine interaktive Sitzung, in der das Skript beim Systemstart ausgeführt werden soll.
- Melden Sie einen Benutzer aus dem Session0-Kontext an (kann ein Domänenbenutzer sein) und installieren Sie die Pakete stattdessen als Anmeldeskript.
Ich bin auch offen für andere Vorschläge zur Lösung dieses Problems. Solange ich die Installer irgendwie unbeaufsichtigt über ein Skript ausführen kann, bin ich zufrieden.
psexec
diese Option , um das Skript oder die Installationsdateien mit den Optionen -i und -s zu starten. Dies setzt voraus, dass Ihre Installationsprogramme nicht auf Benutzereingaben warten. Dies ist etwas anderes, das Sie erforschen müssen, um unbeaufsichtigt zu arbeiten.Antworten:
Verwenden Sie PSEXEC , um Ihr Skript oder Ihre Installationsdateien mit den Schaltern
-i
und zu starten-s
. Dadurch werden Ihre Anwendungen als SYSTEM mit einem Interactive Desktop ausgeführt.Normalerweise füge ich
psexec.exe
den gleichen Pfad wie meine Skripte auf einer Netzwerkfreigabe ein und rufe ihn dann mit den GPO-Startskripten auf.quelle