Startup von Windows Services (Dienste) mittels Registrierung direkt ändern.

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

Wem die Optionen von shutdown.exe nicht ausreichen, die Windows standardmäßig bietet, der verwendet das Sysinternal-Tool PsShutdown. Die Optionen des Tools sind ähnlich. Mit der Option -t können Sie einen Sekundenwert angeben oder den Zeitpunkt festzulegen, zu dem ein Shutdown ausgeführt werden soll. Den Zeitpunkt legen Sie durch die Verwendung der 24-Stunden-Schreibweise fest:
</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;">
Mit -c geben Sie dem Anwender auf dem Computer die Möglichkeit, den Vorgang abzubrechen. Sie können auch gleichzeitig mehrere Systeme neu starten:
</div>
<div style="text-align: justify;"><code>psshutdown -r \computer1,computer2,computer3</code></div>
<div style="text-align: justify;">
Alternativ können Sie die Rechnernamen in eine Textdatei schreiben und diese verwenden:
</div>
<div style="text-align: justify;"><code>psshutdown -r @rechnerliste.txt</code></div>
<div style="text-align: justify;">
In dieser Datei darf in jeder Zeile nur ein Computername aufgelistet sein. Sie müssen bei der Verwendung im Netzwerk das Tool nicht auf jedem Rechner installieren, vielmehr genügt der Start von einem einzelnen Computer aus. Im Vergleich zu shutdown.exe bietet das Tool zusätzliche Optionen, beispielsweise auch die Möglichkeit das System zu sperren.. Das Tool hat folgende Optionen:
</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;">
• computer – Gibt an, welchen Computer Sie herunterfahren wollen. Mit der Option * fahren Sie alle Computer der Domäne herunter.
• @file – Verwendet die Datei als Rechnerliste der Computer, die Sie herunterfahren wollen.
• -u – Benutzername, mit dem Sie das Herunterfahren durchführen wollen.
• -p – Kennwort für das Benutzerkonto.
• -a – Bricht einen Vorgang ab.
• -c – Angemeldeter Benutzer kann den Vorgang abbrechen.
• -d – Verordnet dem Computer eine Pause (Suspend).
• -e – Grund für das Herunterfahren (u für Benutzer, p für geplant).
• -f – Geöffnete Anwendungen werden beendet, auch ohne Speichern.
• -h – Ruhezustand aktivieren.
• -k – Computer ausschalten.
• -l – Computer sperren.
• -m – Nachricht zum Herunterfahren.
• -o – Abmelden des Benutzers Logoff the console user.
• -r – Neustart.
• -s – Shutdown ohne ausschalten.
• -t – Shutdown.
Ps-Shutdown Quelle: http://www.tecchannel.de/pc_mobile/windows/
Kommentar schreiben

0 Kommentare.

Kommentar schreiben


Hinweis - Du kannst dies benutzenHTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>