wsennecke
Goto Top

Rechner automatisch herunterfahren (wenn auf Anmeldemaske)

Hallo,

ich habe eine Frage zum automatischen herunterfahren von XP Clients.

Wir lassen einige Clients per Wake on LAN morgens zu einer bestimmten Uhrzeit starten. Nun kann es vorkommen, das der jeweilige Kollege gerade im Urlaub ist und der Rechner dann abends nicht heruntergefahren wird.
Ich bin auch der Suche nach einem Tool, welches bestimmte Rechner zu einer festgelegten Uhrzeit herunterfährt wenn der Client auf der Anmeldemaske steht. Zusätzlich kann sich auch ein Prozess definieren lassen.
Der Rechner kann auch heruntergefahren werden wenn dieser bestimmte Prozess nicht läuft. Hat jemand damit schon Erfahrung und kann mir diesbezüglich ein paar Tipps geben wie sich sowas lösen lässt?

Content-ID: 137419

Url: https://administrator.de/contentid/137419

Ausgedruckt am: 23.11.2024 um 12:11 Uhr

jhinrichs
jhinrichs 04.03.2010 um 14:53:10 Uhr
Goto Top
Hallo,
leider schreibst Du nicht, welche OSse im Einsatz sind. Eine Skizze für eine Windows-Umgebung (Client/Server):
über
net session > ANPCS.TXT
eine IP-Liste der Rechner erstellen, an denen Benutzer angemeldet sind.
Mittels Ping o.ä. eine IP-Liste der Rechner erstellen, die eingeschaltet sind.
Dann in einer Schleife in der Batch alle eingeschalteten Clients im Netz durchgehen, prüfen, ob sie in der Angemeldet-Liste auftauchen (mit der IP), wenn nicht, herunterfahren per
shutdown -s -t 00 -m \\CLIENT-IP
oder per psshutdown (dem könnte man auch eine Liste der auszuschaltenden Rechner per Datei übergeben, die als Differenzfile gebildet wird, setzt aber eine Sortierung der IPs voraus).
Nicht vergessen, den Server (Server-IP und 127.0.0.1) auch auszunehmen (da ist ja in der Regel auch keiner angemeldet...)
Für die Details bieten sich hier Batchla und Batchber, sorry, Bastla und Biber an....

Grüße
wsennecke
wsennecke 04.03.2010 um 15:24:36 Uhr
Goto Top
Hallo,

erstmal vielen Dank für die schnelle Antwort. Oben steht doch XP-Clients.
Dieses Vorgehen lässt sich komplett automatisieren? Sieht auf den ersten Blick ziemlich kompliziert aus.
jhinrichs
jhinrichs 04.03.2010 um 15:37:46 Uhr
Goto Top
Hallo,
klar XP-Clients, aber der Server könnte ja auch unter Linux laufen, da muss man dann andere Tools einsetzen.
Das kann man per Script, ist eigentlich auch recht einfach:
1. Angemeldete-PC-Textdatei erzeugen (IP ist schon sortiert)
2. Zeilen "zurechtschneiden" (IP extrahieren)
3. Angeschaltete-PC-Textdatei erzeugen (kann man auch sortiert erstellen)
4. Differenzdatei bilden
5. den Server rausnehmen
6. die Datei an psshutdown übergeben
Bin aber kein Batch-Spezialist, das können andere besser umsetzen.
Grüße
wsennecke
wsennecke 04.03.2010 um 15:40:58 Uhr
Goto Top
Ok. Die Server laufen ebenfalls unter Windows.
Wenn jemand hier sowas scripten könnte wäre ich sehr dankbar.
60730
60730 04.03.2010 um 17:36:03 Uhr
Goto Top
Zitat von @wsennecke:
Ok. Die Server laufen ebenfalls unter Windows.
Wenn jemand hier sowas scripten könnte wäre ich sehr dankbar.

Das mußt du dir hier suchen, gibt es bereits.

besteht aus einer "For" Schleife und dem Shutdown.

btw: Ich würde das "anders" machen....

Vor allem ist die Frage, ob Jhinrichs das -f absichtlich vergessen hat - oder nicht.
Wenn z.B Msiexec auf einer Kiste läuft, würde ich die nicht downwen

Der Rechner kann auch heruntergefahren werden wenn dieser bestimmte Prozess nicht läuft
Der Task nennt sich Explorer.exe face-wink

siehe
  • Tasklist /?
auch dazu gibts hier schon nette Sachen.

PS:
IPs sind Schall und Rauch, und ein Shutdown auf den Namen ist immer besser und eine Liste, der angeschalteten Systeme brauchts auch nicht - denn ein System, das ausgeschaltet ist - kann man in der Schleife auch shutdownen.
jhinrichs
jhinrichs 04.03.2010 um 17:48:59 Uhr
Goto Top
IPs sind Schall und Rauch, und ein Shutdown auf den Namen ist immer besser und eine Liste, der angeschalteten Systeme brauchts auch nicht - denn ein System, das ausgeschaltet ist - kann man in der Schleife auch shutdownen.
Da hast Du natürlich Recht, aber net session liefert halt die IPs. Der Vergleich muss natürlich nicht sein, aber net session liefert ja nur die Liste der Rechner, die nicht ausgeschaltet werden sollen, das heißt ich brauche noch irgendeine (auch statische) Liste von Rechnern, die im Netz sind.
Übrigens extra ohne "-f", ob's reicht, um laufende Updates nicht zu unterbrechen, weiß ich aber nicht....
Viele Grüße