Neulich habe ich einen Windows 2003 Server Remote nach einem Software-Update durch gestartet. Zwar ist die Kiste durch gebootet, aber irgendwann hängen geblieben 🙁
Ein Zugang via Remotedesktop war nicht mehr möglich, da der Dienst noch nicht verfügbar war. Von einem anderen Server in der Domäne via remote die Dienste von dem Sorgenkind angesehen und festgestellt, das einige Dienste nicht starten wollten und einige auf beenden standen. Und diese Misere nur wegen einer Fremdsoftware eines großen Telekommunikationsunternehmen. Später stellte sich heraus, dass die Startabhängigkeit dadurch durcheinander gewürfelt wurden.
Was tun ?
Also Remote die Registry bearbeiten und hoffen, dass die Kiste sich nochmal durchstarten lässt. Da der normale Shutdownbefehl nicht mehr funktionierte, half nur noch PS-Shutdown, dazu später noch mehr. Via Remote auf die Kiste -> Im Regeditor -> Datei -> Mit Netzwerkregistrierung verbinden, Rechner auswählen, fertig.
Wo finden sich in der Registry die Dienste und wie lässt sich der Start beeinflussen ?
Ob ein Windows-Dienst automatisch, manuell oder überhaupt nicht gestartet wird, legt Windows mit Registry-Einträgen unter HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ fest.
Darüber lässt sich steuern, welche Dienste (Services) aktiviert oder deaktiviert werden sollen.
Entscheidend ist der Registry-Schlüssel -> Start.
Bedeutung der Werte:
0x00000002 bedeutet, dass der Dienst automatisch gestartet wird.
0x00000003 bedeutet, manueller Start.
0x00000004 deaktiviert den Dienst.
Leider lassen die Bezeichnungen nicht sofort auf die einzelnen Dienste schließen. Wuauserv steht beispielsweise für automatische Updates. Hier empfiehlt es sich unterhalb von HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ nach der Bezeichnung zu suchen, wie man sie in der Computerverwaltung antrifft. Diese Bezeichnungen werden im Schlüssel DisplayName gespeichert.
Per Script lassen sich die Werte wie folgt automatisch eintragen:
[codesyntax lang=“text“]
Windows Registry Editor Version 5.00
;*** 2 = Automatisch starten
;*** 3 = Manuell starten
;*** 4 = Deaktiviert
;*** Windows Update
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\wuauserv]
„Start“=dword:00000004
;*** Fehlerberichterstattung
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ERSvc]
„Start“=dword:00000004
;*** Firewall
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess]
„Start“=dword:00000004
;*** Sicherheitscenter
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\wscsvc]
„Start“=dword:00000004
[/codesyntax]
Danach habe ich den Server via PS-Shutdown neu gestartet, zu finden im Technet von Microsoft:
http://technet.microsoft.com/en-us/sysinternals/bb897541
PsShutdown.exe mit mehr Optionen
</div> <div style="text-align: justify;"><code>psshutdown -m "Dieses System wird aus Wartungsgründen neu gestartet" -t 23:00 -r</code></div> <div style="text-align: justify;">
</div> <div style="text-align: justify;"><code>psshutdown -r \computer1,computer2,computer3</code></div> <div style="text-align: justify;">
</div> <div style="text-align: justify;"><code>psshutdown -r @rechnerliste.txt</code></div> <div style="text-align: justify;">
</div> <div style="text-align: justify;"><code>psshutdown [[\\computer[,computer[,..] | @file [-u user [-p psswd]]] -s|-r|-h|-d|-k|-a|-l|-o [-f] [-c] [-t nn|h:m] [-n s] [-v nn] [-e [u|p]:xx:yy] [-m "Nachricht"</code></div> <div style="text-align: justify;">
Keine Kommentare möglich.