
In dieser Schritt-für-Schritt-Anleitung zeige ich, wie man PowerShell-Skripte mit SCCM bereitstellt. Mithilfe der Funktion „Skripts ausführen“ können Sie wichtige Skripts auf Clientcomputern bereitstellen, die von Configuration Manager verwaltet werden.
Configuration Manager enthält eine integrierte Funktion zum Erstellen und Ausführen von PowerShell-Skripts. Dieses leistungsstarke Tool ermöglicht die Erstellung fortschrittlicher, automatisierter Skripte, die leicht zu verstehen sind und in der Community weit verbreitet sind.
Der Hauptzweck der Bereitstellung dieser Skripte besteht darin, die Entwicklung benutzerdefinierter Verwaltungstools für die Softwareverwaltung zu rationalisieren, sich wiederholende Aufgaben zu vereinfachen und dabei zu helfen, umfangreiche Vorgänge effizienter und konsistenter durchzuführen. Organisationen, die Windows-Geräte verwenden, können Intune auch zum Bereitstellen von PowerShell-Skripts verwenden.
Installieren und aktualisieren Sie Anwendungen von Drittanbietern mit Patch My PC
Skriptbereitstellungsmethoden
Sie können PowerShell-Skripte in SCCM mit zwei Hauptmethoden ausführen:
-
Funktion „Skripte ausführen“: Meiner Meinung nach ist dies die empfohlene Methode zum Ausführen von Skripten. Verwenden Sie diese Methode für die sofortige Skriptausführung in Echtzeit für Clients.
-
Verpacken des Skripts als Anwendung oder Paket: Sie können Ihr Skript als Anwendung oder Paket für die Softwareinstallation mit oder ohne Erkennung packen.
Skriptfunktionen ausführen
Sie können die Funktion „Skripts ausführen“ in Configuration Manager verwenden, um Folgendes zu tun:
-
Erstellen und bearbeiten Sie Skripts und verwalten Sie die Skriptnutzung über Rollen und Sicherheitsbereiche.
-
Organisieren Sie Ihre Skripte in separaten Ordnern.
-
Führen Sie Skripts auf Sammlungen oder einzelnen lokal verwalteten Windows-PCs aus.
-
Planen Sie die Laufzeit von Skripten in UTC auf Sammlungen oder einzelnen vor Ort verwalteten Windows-PCs.
-
Erhalten Sie schnell aggregierte Skriptergebnisse von Client-Geräten.
-
Überwachen Sie die Skriptausführung und zeigen Sie Berichtsergebnisse aus der Skriptausgabe an.
Voraussetzungen
In der folgenden Tabelle sind die Voraussetzungen für die effektive Bereitstellung von PS-Skripten über SCCM aufgeführt.
Voraussetzung |
Beschreibung—|—PowerShell |
Auf dem Client muss PowerShell Version 3.0 oder höher ausgeführt werden. Stellen Sie sicher, dass die PS-Ausführungsrichtlinie auf den Zielcomputern die Ausführung von Skripts zulässt.
SCCM-Version |
Configuration Manager-Clients müssen Version 1706 oder höher verwenden.
Berechtigungen |
Sie müssen Mitglied der entsprechenden Configuration Manager-Sicherheitsrolle sein.
1. So importieren und erstellen Sie Skripts: Ihr Konto muss über die Berechtigung zum Erstellen von SMS-Skripts verfügen.
2. Um Skripte zu genehmigen oder abzulehnen – Ihr Konto muss über Genehmigungsberechtigungen für SMS-Skripte verfügen.
3. So führen Sie Skripts aus: Ihr Konto muss über die Berechtigung „Skript ausführen“ für Sammlungen verfügen.
Skripttests |
Testen Sie Ihr Skript gründlich, bevor Sie es auf Windows-Geräten bereitstellen.
Schritte zum Bereitstellen von PowerShell-Skripts mit SCCM
Ich werde Sie jetzt durch die Schritte zum Erstellen und Ausführen von PowerShell-Skripts in SCCM führen. Das folgende Verfahren verwendet die Funktion „Skripts ausführen“ zum Ausführen von Skripts auf Windows-Geräten.
Schritt 1: Erstellen Sie ein PowerShell-Skript
Die erste Voraussetzung besteht darin, dass ein PowerShell-Skript für die Bereitstellung bereitsteht. Ich werde ein sehr einfaches PowerShell-Skript verwenden, das einen Ordner namens „LogFiles“ im Stammverzeichnis erstellt. Sie speichern dieses Skript als createfolder.ps1.
New-Item -Path "C:\" -Name "Logfiles" -ItemType "Directory"
Kopieren
New-Item
-
Path
"C:\"
-
Name
"Logfiles"
-
ItemType
"Directory"
Öffnen Sie die Configuration Manager-Konsole. Navigieren Sie zu Softwarebibliothek > Übersicht > Skripte. Klicken Sie mit der rechten Maustaste auf „Skripte“ und wählen Sie „Skript erstellen“.
Skript in SCCM erstellen
Konfigurieren Sie auf der Seite „Skript“ des Assistenten „Skript erstellen“ Folgendes:
-
Skriptname: Geben Sie einen Namen für das Skript ein.
-
Skriptbeschreibung: Sie können optional eine Beschreibung für das Skript hinzufügen.
-
Skriptsprache: Derzeit werden nur PowerShell-Skripte unterstützt.
-
Skript-Timeout-Sekunden: Geben Sie die Zeit für die Ausführung des Skripts an (60 Sekunden – 1800 Sekunden).
-
Importieren: Klicken Sie auf die Schaltfläche „Importieren“ und wählen Sie ein PowerShell-Skript aus. Das Skript wird im Feld Skript angezeigt.
Klicken Sie auf Weiter, um fortzufahren.
PowerShell-Skript importieren
Überprüfen Sie die Skriptdetails auf der Zusammenfassungsseite und klicken Sie auf Weiter. Klicken Sie auf der Seite „Abschluss“ auf „Schließen“.
Erstellen Sie ein PowerShell-Skript in SCCM
Schritt 2: Genehmigen Sie das Skript
Bevor das Skript auf Client-Computern ausgeführt wird, muss es genehmigt werden. Wenn Sie ein Skript erstellen und feststellen, dass die Genehmigungsoption in SCCM ausgegraut ist, liegt das daran, dass Benutzer von sich aus erstellte Skripte nicht genehmigen können. Um dieses Problem zu beheben, deaktivieren Sie die Option „Skriptautoren benötigen zusätzlichen Skriptgenehmiger“.
Um das Skript zu genehmigen, gehen Sie zu Softwarebibliothek > Skripte. Klicken Sie mit der rechten Maustaste auf das PowerShell-Skript und wählen Sie Genehmigen aus.
Genehmigen Sie das PowerShell-Skript
Sie müssen den Assistenten zum Genehmigen oder Ablehnen von Skripten durchlaufen und die Skriptdetails ein letztes Mal überprüfen. Klicken Sie auf Weiter.
Genehmigen Sie das PowerShell-Skript
Wählen Sie auf der Seite „Skriptgenehmigung“ die Option „Genehmigen“ aus. Klicken Sie auf Weiter.
Genehmigen Sie das PowerShell-Skript
Schließen Sie den Assistenten zum Genehmigen oder Ablehnen von Skripts.
Genehmigen Sie das PowerShell-Skript
Sobald Sie die oben genannten Schritte ausgeführt haben, aktualisieren Sie die Konsole. Der Genehmigungsstatus des Skripts wird als „Genehmigt“ angezeigt. Wenn Sie das sehen, machen Sie alles richtig. Fahren Sie mit dem nächsten Schritt fort.
PowerShell-Skript in der Konsole genehmigt
Schritt 3: Führen Sie das Skript auf den Zielgeräten aus
Nachdem ein Skript genehmigt wurde, können Sie es für ein einzelnes Gerät oder eine Sammlung ausführen. Um das Skript in der Configuration Manager-Konsole auszuführen, klicken Sie auf Assets und Compliance > Gerätesammlungen. Wählen Sie eine Sammlung Ihrer Wahl aus, klicken Sie mit der rechten Maustaste und wählen Sie „Skript ausführen“.
Führen Sie das Skript auf Zielgeräten aus
Wählen Sie auf der Seite „Skript“ des Assistenten „Skript ausführen“ ein Skript aus der Liste aus. Wenn Sie Ihr Skript hier nicht sehen, bedeutet das, dass es noch nicht genehmigt ist. Klicken Sie auf Weiter.
Führen Sie das Skript auf Zielgeräten aus
Ab SCCM-Version 2309 können Sie die Laufzeit von Skripten in UTC planen. Dies ist eine sehr praktische Funktion für Administratoren, die Skripte zu einem bestimmten Zeitpunkt ausführen möchten. Wenn Sie das Skript nicht planen möchten, klicken Sie auf Weiter.
Ausführungsskripte planen
Auf der Seite „Skriptstatusüberwachung“ können Sie die Ausführung eines Skripts in Echtzeit überwachen und später zum Status und zu den Ergebnissen einer bestimmten Ausführung eines Skripts zurückkehren. Schließen Sie den Assistenten.
Skriptstatusüberwachung
Sobald die Ausführung Ihres Skripts beginnt, wird es schnell über ein System mit hoher Priorität gestartet, das nach einer Stunde abläuft.
Schritt 4: Skriptausführung überwachen
Wenn Sie ein Skript auf vielen Clients ausführen, können Sie den Fortschritt der Skriptbereitstellung im Arbeitsbereich „Überwachung“ der Konsole überwachen. Gehen Sie in der Konsole zu „Überwachungsarbeitsbereich“ > „Skriptstatus“. Klicken Sie mit der rechten Maustaste auf das Skript, das Sie überwachen möchten, und wählen Sie Status anzeigen. Hier finden Sie den Abschlussstatus der Skriptausführung.
Hinweis: Wenn die Clients offline sind, schlägt die Skriptausführung fehl. Die Clients müssen online sein, damit die Skripte ausgeführt werden können. Wenn das Zielgerät während des einstündigen Zeitraums ausgeschaltet wird, müssen Sie es erneut ausführen.
Überwachen Sie die Skriptausführung in SCCM
Wenn Sie die Ausführung eines Skripts zu einem bestimmten Zeitpunkt geplant haben, können Sie seinen Ausführungsstatus im Knoten „Überwachung“ > „Geplante Skripte“ überwachen.
Protokolldateien
Die folgenden Protokolldateien sind hilfreich für die Fehlerbehebung bei der Funktion „Skripts ausführen“ in SCCM.
-
Überprüfen Sie auf dem Client die Dateien Scripts.log und CcmMessaging.log. Diese Protokolle befinden sich im Ordner C:\Windows\CCM\logs.
-
Überprüfen Sie auf dem MP das MP_RelayMsgMgr.log im Ordner C:\SMS_CCM\Logs.
-
Überprüfen Sie auf dem Standortserver das SMS_Message_Processing_Engine.log im Ordner C:\Programme\Configuration Manager\Logs.
Eine Liste weiterer Protokolle finden Sie in der umfassenden Liste der Configuration Manager-Client- und Serverprotokolle.
Überwachen Sie die PowerShell-Skriptbereitstellung in SCCM
Löschen Sie ein Skript aus dem Konfigurationsmanager
Sobald die Skriptbereitstellung abgeschlossen ist, können Sie sie sicher von der Konsole entfernen, wenn sie nicht mehr benötigt wird. Um ein PowerShell-Skript aus der SCCM-Konsole zu löschen, gehen Sie zu Softwarebibliothek > Übersicht > Skripte. Wählen Sie ein Skript aus und klicken Sie auf Löschen. Wählen Sie „Ja“, um das Löschen des Skripts zu bestätigen.
PowerShell-Skript aus der SCCM-Konsole löschen
Hinweis: Sobald Sie ein Skript von der Konsole gelöscht haben, können Sie es nicht wiederherstellen. Ich empfehle, eine Sicherungskopie des Skripts zu erstellen, bevor Sie es endgültig löschen. Erfahren Sie, wie Sie den SCCM-Server effizient sichern.
Einschränkungen der Funktion „Skripts ausführen“.
Bei der Verwendung von Run Scripts gelten die folgenden Einschränkungen.
-
Skriptsprachen: Unterstützt nur PowerShell.
-
Parametertypen: Ganzzahl, Zeichenfolge und Liste.
Automatisieren von Ausführungsskripten mit Windows PowerShell
Sie können die Funktion „Skripts ausführen“ automatisieren, indem Sie die folgenden PowerShell-Cmdlets verwenden.
Brauchen Sie noch Hilfe?
Wenn Sie weitere Hilfe zu dem oben genannten Artikel benötigen oder andere technische Probleme besprechen möchten, sehen Sie sich einige dieser Optionen an.
Foren
Telegramm
Kontaktieren Sie mich
*️⃣ Quelllink:
PowerShell-Skripts erstellen und ausführen, Intune zum Bereitstellen von PowerShell-Skripts,
, PS-Ausführungsrichtlinie, Skriptautoren benötigen zusätzlichen Skriptgenehmiger, SCCM-Version 2309, umfassende Liste der Configuration Manager-Client- und Serverprotokolle, Sicherung den SCCM-Server effizient,
Foren
, Telegramm ,
Kontaktieren Sie mich
,