Dienste remote verwalten mit PowerShell

Um Dienste remote zu verwalten, bringt die PowerShell folgende cmdlets mit:

  • Get-Service
  • Stop-Service
  • Start-Service
  • Restart-Service

In diesem Beispiel wollen wir den Windows-Update Dienst stoppen bzw. starten. Um dieses zu tun, müssen wir zunächst den Namen des Dienstes herausfinden:

PS C:\> get-service -ComputerName cvgwin2008tst | findstr /c:"Windows Update"
Running  wuauserv  Windows Update

Jetzt wissen wir das der gesuchte Dienst wuauserv heißt. Das ganze speichern wir uns in einer Variable:

PS C:\> $service = get-service -ComputerName cvgwin2008tst -Name wuauserv
PS C:\> $service
Status   Name      DisplayName
------   ----      -----------
Running  wuauserv  Windows Update

Da das Stop-Service cmdlet den Parameter -ComputerName nicht unterstützt, behelfen wir uns mit dem Parameter -InputObject und lassen uns ausgeben was gerade passiert (-Verbose):

PS C:\> Stop-Service -InputObject $service -Verbose
VERBOSE: Performing operation "Stop-Service"
on Target "Windows Update (wuauserv)"

Mit $service prüfen wir, ob der Dienst wirklich gestoppt wurde:

PS C:\> $service
Status   Name       DisplayName
------   ----       -----------
Stopped  wuauserv   Windows Update

Mit Start-Service starten wir den soeben gestoppten Dienst wieder und überprüfen den Vorgang:

PS C:\> Start-Service -InputObject $service -Verbose
VERBOSE: Performing operation "Start-Service"
on Target "Windows Update (wuauserv)".
PS C:\> $service
Status   Name       DisplayName
------   ----       -----------
Running  wuauserv   Windows Update

Schreiben Sie einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.