Pc Automatisch ausschalten

kingdodo

Lt. Junior Grade
Registriert
Feb. 2006
Beiträge
474
Guten Morgen an alle,

Ich habe eine Idee, die ich persönlich nicht ganz in die realität umsetzen kann und zwar gehts darum, dass mein Computer automisch runterfahren soll, wenn KEINE Netzwerkverbindung mehr besteht. Ist das möglich? Ich dachte irgendwie an eine BAT-Datei, die dann irgendwie immer kontrolliert, ob noch eine Verbindung besteht.

Die Sache hat den folgenden Hintergrund: Ich kann mein Switch per Fernbedienung ausschalten, dann wäre es ja auch cool, wenn ich dann durch das Ausschalten des Switches auch den PC ausschalten könnte.


Kann mir jemand helfen oder vllt auch so eine BAT-Datei für mich schreiben?

mfg Kingdodo
 
Zuletzt bearbeitet:
Eine Frage an dich wieviel CPU-Auslastung verursacht eine Netzwerkverbindung. Wenn das im Messbaren bereich ist wie 5% dann kann ich dir das Programm Easy-Shutdown empfehlen, z.B. wenn die auslastung unter 5% ist dann schaltet sich der Rechner ab.
 
Die Cpu Auslastung beträgt ca. 7% die netzwerkauslastung ca. 0,28 % wenn ich musik höre.

Aber es geht ja darum, dass wenn die Netzwerkverbindung komplett getrennt ist (sprich wenn des Switch aus ist), dass der PC dann heruntergefahren wird.

Oder hab ich bei dir jetzt irgendwas falsch verstanden:confused_alt: Weil die is ja so niedrig, wenn ich nicht musik hör, dass er ja dann einfach runterfahn würd oder nicht?
 
Vorschlag: Kauf Dir eine Master-/Slave-Steckdosenleiste und klemm Deinen Rechner an die Master-Dose und Dein Switch-Netzteil und sonstige Peripheriegeräte (außer vielleicht Drucker wegen Tintenverbrauch) an die Slave-Steckdosen. So schalten sich alle Slave-Geräte ab, sobald auch Dein Rechner aus ist.
Alternative: Und wenn Du Deinen Rechner komplett vom Stromnetz nehmen willst, kann Du noch eine Funksteckdose vor (einer normalen) Steckdosenleiste schalten. Damit kannst Du den Rechner auch per Fernbedienung einschalten (z. B. morgens vom Bett aus :D), wenn Du "WakeOnPowerOn" im BIOS aktivierst.
 
Ja also wenn du die Verbindung mir der Fernbedienug trennst ist ja auch die CPU-Auslastung weg.
 
@ Cumonu:
Ich habe zwar eine Master/Slave Steckdosenleiste aber du hast eines nicht berücksichtigt, es geht nur, wenn du das Netzteil komplett ausschlatest, das heißt den schalter hinten auf "0" legen (sofern man einen hat)und auch Funkgesteuerte Steckdosen, das mit dem anmachen klappt ja auch wunderbar morgends außem bett^^ aber ausmachen geht ja so nicht, da ich den PC ja dadurch nicht runterfahren kann sondern nur direkt ausschalte.

@ XShocker22:
Geht die CPU auslastung komplett weg, wenn man die Netzwerkverbindung trennt? weil bei mir ist die trotzdem noch so bei 7% wenn ich das Kabel zieh!
 
Zuletzt bearbeitet:
Die CPU Auslastung ist selbst bei Netzwerkzugriff viel zu gering. Wenn auf das Netzwerk nicht zugegriffen wird, verbaucht die Netzwerkkarte nahezu keine Ressourcen. Diese Möglichkeit scheidet somit aus. Warum du dauerhaft 7% Auslastung hast, kann ich mir nicht erklären.

Das Programm wurde für DVD-Shrinker konzipiert. 100% CPU Auslastung während der PC arbeitet - nach abgeschlossener Arbeit <5% --> Programm fährt Rechner runter.;)
 
Also kennt keiner von euch eine geeignete Lösung für das Problem?

Naja falls jemandem noch was einfällt, kann er sich ja mal bei mir melden wäre echt cool, ich werde in der Zwischenzeit auch nochmal probieren, eine BAT datei zu schreiben, die es möglich macht.

mfg. Kingdodo
 
Will noch mal auf die Master-/Slave-Leiste zurückkommen. Du hast geschrieben, die Slave-Geräte schalten erst ab, wenn Du das Rechner-Netzteil ausschaltest. D. h., die Leistungsaufnahme Deines Rechners im Ruhezustand ist immer noch höher als die Ein-/Ausschalt-Schwelle Deiner Master-/Slave-Leiste. Abhilfe könnte eine Leiste sein, bei der man diese Schwelle verstellen kann. Es gibt welche, die man stufenlos einstellen kann, z. B. auf bis zu 40 W. Mehr sollte sich Dein Board im Ruhezustand auch nicht gönnen dürfen.
 
Hallo kingdodo,

interessantes Problem, hab mal etwas ähnliches per Batch gemacht, das Prinzip lässt sich aber auch bei dir anwenden:

- Du pingst eine Webseite im I-Net an und leitest die Ausgabe in eine Datei (Die Idee mit der Netzauslastung war schon in die richtige Richtung, noch eindeutiger ist aber das Ergebnis eines Ping-Befehls, entweder es kommt eine Fehlermeldung oder es werden die Antwortzeiten angezeigt)

- Diese Datei lässt du mit findstr auf eine bestimmte Zeichenfolge durchsuchen (nämlich nach einer Fehlermeldung des Pings)

- Das Ergebnis der Suche (den ERRORLEVEL, den findstr zurückgibt) lässt du durch eine IF Abfrage auswerten (PC aus Ja / Nein)

- Das alles läuft in einer intervallgesteuerten Endlos-Schleife

Hier mal grober Umriss ;) :

del /f C:\ping.txt
:Mon
ping www.web.de >C:\ping.txt
findstr "Zielhost nicht erreichbar" C:\ping.txt
if %ERRORLEVEL% == 0 goto shutdown
findstr "berschreitung der Anforderung" C:\ping.txt
if %ERRORLEVEL% == 0 goto shutdown
ping -n 30 localhost >nul
goto Mon
:shutdown
shutdown /s /f /t 05

Das Script macht einen Ping auf Web.de, speichert das Ergebnis in C:\ping.txt und durchsucht diese Datei nach "Zielhost nicht erreichbar" und "berschreitung der Anforderung" (ü mag Cmd gar nicht!:D ).
Wird eine dieser Zeichenfolgen gefunden, so wird der ERRORLEVEL Null bleiben, ansonsten wird er auf Eins gesetzt.
Dieser ERRORLEVEL wird in den beiden if-Zeilen abgefragt, falls er Null ist, springt das Script zur Marke :shutdown und fährt den PC nach 5 sek. herunter
Ansonsten legt das Script eine Pause von 30 sekunden ein und springt dann zur Marke :Mon und wiederholt alles.

Webseiten, Pfade und Zeiten musst du natürlich an deine Werte anpassen. Ich würde noch einen Fehlerzähler einbauen, der erst beim zb 3. erfolglosen ping den PC herunterfährt, falls du Hilfe dafür brauchst sag Bescheid.

Auch würde ich mir aus der Batch ne Exe machen und diese als Dienst laufen lassen, dann wirkts nicht ganz so antiquirt! ;) Obwohl, man kann ja an meinem Entwurf sehr schön sehen, was alles möglich ist mit der Windows-Kommandozeile! :o


my2cents

PCB
 
Wäre es nicht sinnvoller den anderen PC zu pingen weil web.de wird ja irgendwann auch mal down sein? :D oder musst der eine PC auch manchmal laufen wenn der andere aus is?
 
Man könnte theoretisch noch eine 2. Webside anpingen oder?
Und das mit einen andern PC anpingen halte ich für weniger sinnvoll wegen Firewalls etc.
Wäre es nciht noch möglich den Switch anzupingen.

PS: Wenn eine Finall varriante fertig ist, kann sie Jemand posten ;) bin da auch dran intressiert und den bisschen ungeschickt mit der Kommandozeile
 
Hi,

natürlich kann man auch mehrere Seiten anpingen für den Fall das zb web.de nicht erreichbar ist und so die Verlässlichkeit erhöhen!
Dazu werden einfach die Zeilen mit dem Ping, der findstr-Suche und der if-Abfrage dupliziert und dort die neue Webseite eingetragen.

Also von einem "andereren PC" hatte dodo nichts erwähnt!? :confused_alt:

Und wenn ihr damit den Switch meint:
Ein Switch hat keine eigene IP-Adresse, er leitet Pakete auf Layer 2 anhand der MAC-Adresse transparent an die Teilnehmer weiter, d.h. der Switch ist im Netzwerk nicht sichtbar! Aber ich geb zu das ich die gleiche Idee hatte, mirs dann aber siedendheiß eingefallen ist. :D

Wenn es ein Router wäre, dann würds gehen, da dieser auch eine eigene LAN-IP besitzt, welche angepingt werden kann.

Wenn ich bei mir das Kabel ziehe und dann pinge, kommt bei mir der Fehler "Ping-Anforderung konnte Host "www.web.de" nicht finden." Man könnte also auch nach dieser Zeichenfolge suchen, vielleicht ist das sogar die einzige Möglichkeit, da in der Textdatei die anderen Ausdrücke (Zielhost nicht gefunden usw) gar nicht vorhanden sind.

Also die Zeile

findstr "Zielhost nicht erreichbar" C:\ping.txt
und
findstr "berschreitung der Anforderung" C:\ping.txt

durch

findstr "Ping-Anforderung konnte Host "www.web.de" nicht finden." C:\ping.txt

ersetzen.


Wenns noch ne andere Möglichkeit gibt, immer her damit, man lernt ja nie aus!;)


PCB
 
Zurück
Oben