Autor Thema: Serverprozesse killen  (Gelesen 1842 mal)

Offline Wolfgang

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.412
    • Mit dem Fahrrad durch Wüste, Regenwald und Arktis ...
Serverprozesse killen
« am: 23.12.02 - 14:46:03 »
Hallo zusammen,

wir hatten das Thema kürzlich schon mal bzgl. abgeschmiertem Client, der sich nicht mehr starten läßt, weil Prozesse im Hintergrund aktiv sind. Hier nun eine Lösung für den Server ...

Damit lassen sich die Prozesse eines abgeschmierten NT-Servers killen, so daß ein Neustart überflüssig wird. Ich habe die Batchdatei (muß von .txt in .bat umbenannt werden) mal hier reingestellt.

Ich bin heute dazu gekommen, das mal auszuprobieren und es klappt hervorragend. Anzupassen sind die beiden "SET"-Befehle am Anfang der Datei. Benötigt werden noch die kill.exe, die sleep.exe und die tlist.exe aus dem NT-RessourceKit.

Vielleicht kann das ja noch jemand gebrauchen ...

Gruß
Wolfgang
« Letzte Änderung: 23.12.02 - 14:48:22 von Wolfgang »

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re:Serverprozesse killen
« Antwort #1 am: 23.12.02 - 18:53:13 »
Hi,

so schön es auch sein mag den Server oder Client nach einem Absturz nicht neu starten zu müssen, bei mir bleiben da Zweifel.

Auch wenn alle Prozesse und Tasks geendet werden können, bei einem Absturz bleiben immer Fragmente im Speicher zurück, die bei einem Neustart nach dieser Methode unter Umständen wieder zu einem Absturz führen können.

Ich hab  beim Client mit den diversen Tools schon schlechte Erfahrungen gemacht. Meines Erachtens ist und bleibt es die beste Methode nach einem Crash den kompletten Rechner neu zu starten, am besten sogar noch kurz auszuschalten. So wird der Speicher komplett leer geräumt.

Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Re:Serverprozesse killen
« Antwort #2 am: 23.12.02 - 19:13:33 »
da muss ich dir widersprechen; da ich das Speichermodell von Windows sehr gut kenne, kann ich dir versichern, daß das terminieren der Prozesse ALLE Fragmente im Speicher löscht. Voraussetzung ist, daß die entsprechenden API Calls verwendet werden.
Das kill aus dem SDK kann das; es verwendet übrigens die gleichen Calls wie mein nkill.exe auf

http://www.eknori.de/tips/nkill.htm

Es kann natürlich passieren, dass noch Prozesse laufen, die nicht in der Liste der zu killenden Task verzeichnet sind.

Da muss man dann nacharbeiten; sei es in der Batch oder im nkill

eknori



Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz