Dienste auf mehreren Servern skriptgesteuert starten

13. Juni 2018

Bestimmte Probleme machen es nötig, einzelne Dienste auf mehreren Servern zu starten. Beispielsweise falls Dienste eigentlich automatisch nach dem Boot-Vorgang gestartet werden sollen, aber dies nicht korrekt ausgeführt wird. Mit dem passenden Skript für die Windows Powershell lassen sich diese Services gezielt auswählen, und „in einem Rutsch“ starten – auch gleichzeitig auf zahlreichen Servern:

1$Date = Get-Date -Format G
2 
3$Computers = Get-Content .\ServerList.txt
4 
5Foreach ($Computer in $Computers) {
6 
7  
8 
9$Services = Get-Service -ComputerName $Computer | Where-Object {($_.StartType -eq "Automatic") -and ($_.Status -eq "Stopped")}
10 
11  
12 
13Foreach ($Service in $Services) {
14 
15  
16 
17Write "$Date,$Computer,$($Service.DisplayName)" |Out-file .\FailedServices.txt -Append
18 
19  
20 
21Try {
22 
23Start-Service -Name $Service.Name -ErrorAction Stop
24 
25}
26 
27  
28 
29Catch {
30 
31Write "$Date Automatic Service $($Service.DisplayName) failed to start on $Computer" |Out-file .\ServicesStatus.txt -Append
32 
33}
34 
35}
36 
37}

Das Skript „StartAutomaticServices“ von „Pratik Pudage“ steht auf Technet zum kostenlosen Download bereit. Zudem stehen noch weitere Informationen an dieser Stelle bereit.

Florian Huttenloher

Lesen Sie auch