Automatische Abschaltung zu festgelegten Zeiten?

Automatische Abschaltung zu festgelegten Zeiten?

Mir ist bewusst, dass ich (sudo?) in einem Terminalfenster verwenden kann, shutdown -h hh:mmum ein System herunterzufahren. Allerdings ist der angemeldete Benutzer ein Kioskbenutzer, der so gesperrt ist, dass das Terminal (oder jedes andere Fenster außer Firefox) nicht geöffnet werden kann.

Meine Frage ist:
Gibt es eine Möglichkeit, dies zu tun, ohne ein Terminalfenster geöffnet zu haben? Ich habe über Cron gelesen, komme aber nicht ganz dahinter.
Wie kann ich die Abschaltzeit je nach Wochentag ändern?

Antwort1

Cron eignet sich hierfür sehr gut.

Sie müssen zuerst den vollständigen Pfad zum Shutdown-Befehl finden:

a@ubuntu:~$ which shutdown
/usr/sbin/shutdown

Wenn Sie den Pfad zum shutdownBefehl kennen, können Sie die folgende Zeile (mit Anpassungen) am Ende hinzufügen /etc/crontab:

30 23 * * * root /usr/sbin/shutdown -h now

Um 23:30 Uhr wird der Kiosk heruntergefahren. Unabhängig davon, welcher Benutzer angemeldet ist, wird der Shutdown-Befehl als Root ausgeführt.

(Wenn Sie die globale Crontab nicht verwenden möchten, melden Sie sich als Root an und verwenden Sie crontab -e. Verwenden Sie dieselbe Syntax wie oben ohne root).


Cron-Format:

MM HH DD OO WW command

MM: Minute, 0-59
HH: 24-Stunden-Stunde
DD: Tag des Monats
OO: Monat
WW: Wochentag (Sonntag ist 0, Montag ist 1)
command: Selbsterklärend

Antwort2

Ein Cronjob scheint die beste Lösung zu sein, da man für verschiedene Tage unterschiedliche Zeiten angeben kann. Auf Gnome-basierten Systemen kann man einfach installierenGNOME-ZeitplanAufgaben mit

sudo apt-get install gnome-schedule

und konfigurieren Sie dann den Cronjob über die GUI.

Andernfalls müssten Sie sudo crontab -edie folgenden Zeilen verwenden und hinzufügen

30 11 * * 1-5 /sbin/shutdown -h now
30 10 * * 0,6 /sbin/shutdown -h now

Dies würde den PC von Montag bis Freitag um 11:30 Uhr und am Samstag und Sonntag um 10:30 Uhr herunterfahren. Die Struktur ist sehr einfach:

minute (0-59), hour (0-23, 0 = midnight), day (1-31), month (1-12), weekday (0-6, 0 = Sunday), command 

Weitere Informationen hierzu finden Sie auch unterCronAnleitung

Antwort3

Wir können zum angegebenen Zeitpunkt automatisch herunterfahren, indem wir einfach den Befehl sudo poweroffausführen crontab.

Wenn Sie das System jeden Tag um 18:30 Uhr herunterfahren möchten, geben Sie im Terminal Folgendes ein:

sudo crontab -e

bearbeiten

30 18 * * * poweroff

verwandte Informationen