- 06/05/2017
- 4 Minuten zu lesen
-
- j
- s
Es gibt acht zentrale Dienst-Cmdlets, die für eine Vielzahl von Dienstaufgaben konzipiert sind. Sie können jedoch mit Get-Help \*-Service
eine Liste der Dienst-Cmdlets abrufen und mit Get-Help <Cmdlet-Name>
Informationen zu den einzelnen Dienst-Cmdlets finden, z. B. Get-Help New-Service
.
Dienste abrufen
Sie können die Dienste auf einem lokalen oder entfernten Computer mit dem Cmdlet Get-Service
abrufen. Wie beiGet-Process
gibt die Verwendung des Befehls Get-Service
ohne Parameter alle Dienste zurück. Sie können nach Namen filtern und sogar ein Sternchen als Platzhalter verwenden:
Da es nicht immer offensichtlich ist, wie der tatsächliche Name des Dienstes lautet, müssen Sie möglicherweise Dienste anhand des Anzeigenamens suchen. Sie können dies nach einem bestimmten Namen, mit Platzhaltern oder mit einer Liste von Anzeigenamen tun:
Sie können den ComputerName-Parameter des Cmdlets „Get-Service“ verwenden, um die Dienste auf Remotecomputern abzurufen. Der ComputerName-Parameter akzeptiert mehrere Werte und Platzhalterzeichen, sodass Sie die Dienste auf mehreren Computern mit einem einzigen Befehl abrufen können. Der folgende Befehl ruft beispielsweise die Dienste auf dem Remotecomputer „Server01“ ab.
Get-Service -ComputerName Server01
Erforderliche und abhängige Dienste abrufen
Das Cmdlet „Get-Service“ verfügt über zwei Parameter, die bei der Dienstverwaltung sehr nützlich sind. Mit dem ParameterDependentServices werden Dienste abgerufen, die von dem Dienst abhängen. Der RequiredServices-Parameter ruft Dienste ab, von denen dieser Dienst abhängt.
Diese Parameter zeigen nur die Werte der Eigenschaften DependentServices und ServicesDependedOn(alias=RequiredServices) des System.ServiceProcess.ServiceController-Objekts an, dasGet-Service zurückgibt, aber sie vereinfachen die Befehle und machen den Abruf dieser Informationen viel einfacher.
Mit dem folgenden Befehl werden die Dienste abgerufen, die der LanmanWorkstation-Dienst benötigt.
Mit dem folgenden Befehl werden die Dienste abgerufen, die den LanmanWorkstation-Dienst benötigen.
Sie können sogar alle Dienste abrufen, die Abhängigkeiten haben. Der folgende Befehl führt genau das aus und zeigt dann mit dem Cmdlet „Format-Table“ die Eigenschaften „Status“, „Name“, „RequiredServices“ und „DependentServices“ der Dienste auf dem Computer an.
Anhalten, Starten, Anhalten und Neustarten von Diensten
Die Dienst-Cmdlets haben alle die gleiche allgemeine Form. Dienste können durch den allgemeinen Namen oder den Anzeigenamen angegeben werden und nehmen Listen und Platzhalter als Werte an. Um den Druckspooler anzuhalten, verwenden Sie:
Stop-Service -Name spooler
Um den Druckspooler zu starten, nachdem er angehalten wurde, verwenden Sie:
Start-Service -Name spooler
Um den Druckspooler anzuhalten, verwenden Sie:
Suspend-Service -Name spooler
Das Cmdlet Restart-Service
funktioniert auf dieselbe Weise wie die anderen Cmdlets für Dienste, aber wir werden einige komplexere Beispiele für es zeigen. In der einfachsten Anwendung geben Sie den Namen des Dienstes an:
Sie werden feststellen, dass Sie eine wiederholte Warnmeldung über das Starten des Print Spoolers erhalten. Wenn Sie einen Dienstvorgang ausführen, der einige Zeit in Anspruch nimmt, werden Sie von Windows PowerShell benachrichtigt, dass noch versucht wird, die Aufgabe auszuführen.
Wenn Sie mehrere Dienste neu starten möchten, können Sie eine Liste von Diensten abrufen, sie filtern und dann den Neustart durchführen:
Diese Dienst-Cmdlets verfügen nicht über einen Computernamen-Parameter, aber Sie können sie mit dem Cmdlet „Invoke-Command“ auf einem Remotecomputer ausführen. Der folgende Befehl startet beispielsweise den Dienst „Pooler“ auf dem Remotecomputer „Server01“ neu.
Invoke-Command -ComputerName Server01 {Restart-Service Spooler}
Diensteigenschaften festlegen
Das Cmdlet Set-Service
ändert die Eigenschaften eines Dienstes auf einem lokalen oder Remotecomputer. Da der Dienststatus eine Eigenschaft ist, können Sie mit diesem Cmdlet einen Dienst starten, anhalten und aussetzen.Das Cmdlet „Set-Service“ verfügt außerdem über einen StartupType-Parameter, mit dem Sie den Starttyp des Dienstes ändern können.
Um Set-Service
unter Windows Vista und höheren Versionen von Windows zu verwenden, öffnen Sie Windows PowerShell mit der Option „Als Administrator ausführen“.
Weitere Informationen finden Sie unter Set-Service
See Also
- Get-Service
- Set-Service
- Restart-Service
- Suspend-Service