Zum Inhalt wechseln


Foto

Skript zum Herunterfahren wenn kein User eingeloggt ist


  • Bitte melde dich an um zu Antworten
15 Antworten in diesem Thema

#1 Helado

Helado

    Newbie

  • 14 Beiträge

 

Geschrieben 31. Januar 2017 - 07:30

Hallo Community,

 

ich bin auf der Suche nach einem Skript mit folgenden Eigenschaften:

 

Wenn ein am PC keiner angemeldet ist soll PC herunterfahren

Generell soll der PC herunterfahren um 19 Uhr, aber nur wenn keiner eingeloggt ist.

Hochfahren muss nicht sein, das kann der User selbst.

 

Bis jetzt habe ich folgendes:

@ echo off
title shutdown.bat
shutdown -f -s -t 25 -c "This computer will shutdown now"

Es gibt zwar sogenannte Shutdownmanager aber ich tue es lieber mit einem Skript. Dies kann ich im Autostart einfügen und die Berechtigungen entsprechend so setzen, dass ein normaler User das Skript weder sehen, noch ändern kann.



#2 MurdocX

MurdocX

    Member

  • 302 Beiträge

 

Geschrieben 31. Januar 2017 - 07:37

Hier könntest du 2 Trigger in der Aufgabenplanung erstellen. Einer beim Abmelden der den Prozess startet und einer beim Anmelden, der diesen wieder killt (falls innerhalb der 15min sich wieder jemand anmeldet)


Mit freundlicher Unterstützung
Jan


#3 Nobbyaushb

Nobbyaushb

    Board Veteran

  • 2.309 Beiträge

 

Geschrieben 31. Januar 2017 - 07:39

Moin,

 

wir machen das ähnlich, aber vom Server aus angeschubst, wenn der Scan durch ist.

 

;)


Mfg aus Bremen

 

Norbert (der andere :))

MVP Exchange Server


#4 Helado

Helado

    Newbie

  • 14 Beiträge

 

Geschrieben 31. Januar 2017 - 08:28

Moin,

 

wir machen das ähnlich, aber vom Server aus angeschubst, wenn der Scan durch ist.

 

;)

 

 

Wie meinst du, vom Server aus? Vom AD Server?

Hier könntest du 2 Trigger in der Aufgabenplanung erstellen. Einer beim Abmelden der den Prozess startet und einer beim Anmelden, der diesen wieder killt (falls innerhalb der 15min sich wieder jemand anmeldet)

 Das wäre eine gute Idee ja. Das Problem besteht darin, dass manche Studenten hier noch sind bis 22 Uhr.. deshalb die Frage, ob es ein Befehl gibt, der schaut, ob ein User angemeldet ist, so nicht, herunterfahren.


Bearbeitet von Helado, 31. Januar 2017 - 08:29.


#5 testperson

testperson

    Board Veteran

  • 4.027 Beiträge

 

Geschrieben 31. Januar 2017 - 09:14

Hi,

 

mit "query session" und ein wenig Scripting dürftest du angemeldete User finden.

Mit VDI bzw. XenDesktop (und vermutlich auch mit View) lässt sich sowas total easy und automatisch machen. Dürfte aber nur zum Herunterfahren ein bisschen too much sein ;)

 

Gruß

Jan


Good morning, that's a nice TNETENNBA!

#6 MurdocX

MurdocX

    Member

  • 302 Beiträge

 

Geschrieben 31. Januar 2017 - 09:35

 Das wäre eine gute Idee ja. Das Problem besteht darin, dass manche Studenten hier noch sind bis 22 Uhr.. deshalb die Frage, ob es ein Befehl gibt, der schaut, ob ein User angemeldet ist, so nicht, herunterfahren.

 

Bei unseren Studenten bin ich da nicht so nachsichtig  und lasse die Computer 22:30 einfach herunterfahren ( Mit einer 5 minütigen Warnung )  :)


Mit freundlicher Unterstützung
Jan


#7 Helado

Helado

    Newbie

  • 14 Beiträge

 

Geschrieben 31. Januar 2017 - 09:55

Meine Worte :-)

 

Es gibt aber welche, die Nachts noch hier sind oder Simulationen laufen lassen, deshalb kann ich kein shutdown /f /s machen :-)



#8 MurdocX

MurdocX

    Member

  • 302 Beiträge

 

Geschrieben 31. Januar 2017 - 10:15

Wir wollen für unsere Vorlesungen nicht das die Computer gesperrt / belegt sind. Simulationen können sie machen, solange sie an dem PC sitzen. Das Sperren der Arbeitsstation haben wir auch gesperrt. Wir haben eigene Server auf denen die Studenten rechnen können. Bsp. Ansys..


Mit freundlicher Unterstützung
Jan


#9 lefg

lefg

    Expert Member

  • 20.154 Beiträge

 

Geschrieben 31. Januar 2017 - 12:35

Moin,

 

wurde denn schon einmal in die Aufgabenplanung geschaut?


Das Messbare messen, das Nichtmessbare messbar machen. Galilei.

 

Diskutiere nicht mit ***en, denn sie ziehen dich auf ihr Niveau und schlagen dich dort mit Erfahrung! (Hab ich bei Tom abgeguckt)

 

Koinzidenz begründet keine Korrelation und ist kein Beweis für Kausalität. (Hab ich bei Daniel abgeguckt) https://de.wikipedia...rgo_propter_hoc

 

Absolutistischer“ Geschäftsführungs-Dogmatismus, der jedwede Empirie aus der „Werkstatt“ schlichtweg ignoriert , führt eben zumeist früher als später ….  (Hab ich von Klabautermann)


#10 Helado

Helado

    Newbie

  • 14 Beiträge

 

Geschrieben 31. Januar 2017 - 13:12

Wir wollen für unsere Vorlesungen nicht das die Computer gesperrt / belegt sind. Simulationen können sie machen, solange sie an dem PC sitzen. Das Sperren der Arbeitsstation haben wir auch gesperrt. Wir haben eigene Server auf denen die Studenten rechnen können. Bsp. Ansys..

Ja! Das haben wir auch, sehr guter Einwand, kann ich gleich intern mal besprechen.

 

Das finde ich im Übrigen auch eine gute Idee --> verhindern, dass der PC gesperrt wird. Ich sage nur LabVIEW, Matlab etc... :-/.

 

Wie gesagt, es gibt welche, die bleiben bis 12 Uhr Nachts....


Moin,

 

wurde denn schon einmal in die Aufgabenplanung geschaut?

 

Ja, suche mich gerade durch und so lerne ich was dazu :-)



#11 lefg

lefg

    Expert Member

  • 20.154 Beiträge

 

Geschrieben 31. Januar 2017 - 13:35


Ja, suche mich gerade durch und so lerne ich was dazu :-)

 

 

Die Aufgabenplanung heute enthält viel mehr Möglichkeiten als die Vorgänger.

 

Ic hatte vor wohl mehr als 10 Jahren eine ähnliche Aufgabe zu lösen wie Du, finde aber momentan den Thread hier am Board nicht wieder. Ob der heute hilfreich wäre? Und sich eine Suche danach lohnte?

 

Viel Erfolg


Bearbeitet von lefg, 31. Januar 2017 - 13:35.

Das Messbare messen, das Nichtmessbare messbar machen. Galilei.

 

Diskutiere nicht mit ***en, denn sie ziehen dich auf ihr Niveau und schlagen dich dort mit Erfahrung! (Hab ich bei Tom abgeguckt)

 

Koinzidenz begründet keine Korrelation und ist kein Beweis für Kausalität. (Hab ich bei Daniel abgeguckt) https://de.wikipedia...rgo_propter_hoc

 

Absolutistischer“ Geschäftsführungs-Dogmatismus, der jedwede Empirie aus der „Werkstatt“ schlichtweg ignoriert , führt eben zumeist früher als später ….  (Hab ich von Klabautermann)


#12 MurdocX

MurdocX

    Member

  • 302 Beiträge

 

Geschrieben 31. Januar 2017 - 14:04

Ja! Das haben wir auch, sehr guter Einwand, kann ich gleich intern mal besprechen.

Das finde ich im Übrigen auch eine gute Idee --> verhindern, dass der PC gesperrt wird. Ich sage nur LabVIEW, Matlab etc... :-/.

 

Wir hatten öfters die Fälle, das wir die Räume mit über 30 Studenten voll hatten und dann waren mehrere Arbeitsstationen gesperrt, weil dort gerechnet wurde. Die Studenten in der Vorlesung haben dann b***d in die Röhre geschaut, weil sie keinen Platz mehr hatten. 

 

Früher wurden die Computer über 60 Minuten Leerlauf heruntergefahren, bis die Studenten gecheckt haben einfach ein Stück Papier in die STRG-Taste genau das umgeht.

 

Du könntest ab der abendlichen Abschaltzeit ein Skript aktivieren, welches ausließ ob ein Benutzer angemeldet ist. Z.B. über die Variable %Username% oder in der Powershell mit $env:Username und dann entscheidet. 


#requires -Version 1.0

if ($env:USERNAME -like '')
{
  shutdown.exe /s /t 300 /c "Der Computer wird in 5 Minuten heruntergefahren. Speichern Sie nun Ihre Daten."
}

Mit freundlicher Unterstützung
Jan


#13 WPS

WPS

    Newbie

  • 27 Beiträge

 

Geschrieben 01. Februar 2017 - 17:56

Geht vermutlich mit Powershell am einfachsten

Stop-Computer

Ohne den Parameter -force wird kein Rechner runtergefahren wo jemand angemeldet ist.



#14 Helado

Helado

    Newbie

  • 14 Beiträge

 

Geschrieben 03. Februar 2017 - 09:59

 

Wir hatten öfters die Fälle, das wir die Räume mit über 30 Studenten voll hatten und dann waren mehrere Arbeitsstationen gesperrt, weil dort gerechnet wurde. Die Studenten in der Vorlesung haben dann b***d in die Röhre geschaut, weil sie keinen Platz mehr hatten. 

 

Früher wurden die Computer über 60 Minuten Leerlauf heruntergefahren, bis die Studenten gecheckt haben einfach ein Stück Papier in die STRG-Taste genau das umgeht.

 

Du könntest ab der abendlichen Abschaltzeit ein Skript aktivieren, welches ausließ ob ein Benutzer angemeldet ist. Z.B. über die Variable %Username% oder in der Powershell mit $env:Username und dann entscheidet. 


#requires -Version 1.0

if ($env:USERNAME -like '')
{
  shutdown.exe /s /t 300 /c "Der Computer wird in 5 Minuten heruntergefahren. Speichern Sie nun Ihre Daten."
}

Also mit einem PowerShell Skript wie von dir oben beschrieben, kann ich so ausführen?



#15 NilsK

NilsK

    Expert Member

  • 11.665 Beiträge

 

Geschrieben 03. Februar 2017 - 10:20

Moin,

 

nein, die Abfrage von $env:USERNAME führt hier nicht zum Ziel. Die gibt den Namen des Users zurück, der das Skript ausführt. Damit lässt sich aber nicht prüfen, ob jemand angemeldet ist.

 

Die Frage, ob jemand lokal (oder überhaupt) angemeldet ist, ist nicht trivial. Die Abfrage per "query session" wurde schon genannt, aber auch das hat seine Tücken:

 

[Spaß mit der Konsolen-Session | faq-o-matic.net]
http://www.faq-o-mat...nsolen-session/

 

[Monitoring: Ist der Admin an die Konsole angemeldet? | faq-o-matic.net]
http://www.faq-o-mat...ole-angemeldet/

 

Gruß, Nils


Bearbeitet von NilsK, 03. Februar 2017 - 10:21.

Nils Kaczenski

MVP Cloud and Datacenter Management
... der beste Schritt zur Problemlösung: Anforderungen definieren!

Kostenlosen Support gibt es nur im Forum, nicht privat!