Schritt-für-Schritt-Anleitung zur Bereitstellung von PowerShell-Skripts mit SCCM

/de/images/How-to-Deploy-PowerShell-Scripts-using-SCCM_ftimg.png

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.

/de/images/PatchMyPC-AppCatalog-725x250-1.jpg 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“.

/de/images/Deploy-PowerShell-Scripts-using-SCCM-Snap1-1024x735.png Skript in SCCM erstellen

Konfigurieren Sie auf der Seite „Skript“ des Assistenten „Skript erstellen“ Folgendes:

  1. Skriptname: Geben Sie einen Namen für das Skript ein.

  2. Skriptbeschreibung: Sie können optional eine Beschreibung für das Skript hinzufügen.

  3. Skriptsprache: Derzeit werden nur PowerShell-Skripte unterstützt.

  4. Skript-Timeout-Sekunden: Geben Sie die Zeit für die Ausführung des Skripts an (60 Sekunden – 1800 Sekunden).

  5. 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.

/de/images/Deploy-PowerShell-Scripts-using-SCCM-Snap2-950x1024.png 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“.

/de/images/Deploy-PowerShell-Scripts-using-SCCM-Snap3-951x1024.png 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.

/de/images/Deploy-PowerShell-Scripts-using-SCCM-Snap4-1024x711.png 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.

/de/images/Deploy-PowerShell-Scripts-using-SCCM-Snap5-951x1024.png Genehmigen Sie das PowerShell-Skript

Wählen Sie auf der Seite „Skriptgenehmigung“ die Option „Genehmigen“ aus. Klicken Sie auf Weiter.

/de/images/Deploy-PowerShell-Scripts-using-SCCM-Snap6-951x1024.png Genehmigen Sie das PowerShell-Skript

Schließen Sie den Assistenten zum Genehmigen oder Ablehnen von Skripts.

/de/images/Deploy-PowerShell-Scripts-using-SCCM-Snap7-948x1024.png 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.

/de/images/Deploy-PowerShell-Scripts-using-SCCM-Snap8-1024x703.png 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“.

/de/images/Deploy-PowerShell-Scripts-using-SCCM-Snap9-1024x849.png 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.

/de/images/Deploy-PowerShell-Scripts-using-SCCM-Snap10-949x1024.png 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.

/de/images/Deploy-PowerShell-Scripts-using-SCCM-Snap11-951x1024.png 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.

/de/images/Deploy-PowerShell-Scripts-using-SCCM-Snap12-947x1024.png 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.

/de/images/Deploy-PowerShell-Scripts-using-SCCM-Snap14-1024x654.png Ü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.

/de/images/Monitor-PowerShell-Script-deployment-in-SCCM-1024x648.png Ü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.

/de/images/Delete-PowerShell-Script-from-SCCM-Console-1024x658.png 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, /de/images/PatchMyPC-AppCatalog-725x250-1.jpg, 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

,