Geplanter Neustart mit Crontab wurde nicht durchgeführt. Woran könnte das liegen?

Geplanter Neustart mit Crontab wurde nicht durchgeführt. Woran könnte das liegen?

Information

Ich habe die folgende Crontab für den Root-Benutzer unter Debian 10.

root@debian:~# crontab -l
# crontab comments curtailed for serverfault
#
# m h  dom mon dow   command

30 3 * * * shutdown -r now

Wenn ich es ausführe uptime, who -berhalte ich die Ergebnisse vom letzten manuellen Neustart (gestern gegen 18 Uhr).

root@debian:~# uptime
 11:03:19 up 16:29,  1 user,  load average: 0.00, 0.01, 0.00
root@debian:~# who -b
         system boot  2020-12-26 18:34

Ich habe die Crontab gestern gegen 19 Uhr erstellt, sie war also definitiv vor der Zielzeit vorhanden.

Frage

Gibt es einen Grund, warum das nicht funktioniert hat? Kann ich das irgendwie debuggen?

Antwort1

Überprüfen Sie das Protokoll, um zu sehen, ob der Cron-Job zur angegebenen Zeit ausgeführt wurde.

Ist man bei Debian-Cron angemeldet /var/log/syslog, wird dort ggf. ein Fehler gemeldet, ob der Cron-Job aktiviert wurde.

Wenn ja, grep cron /var/log/syslogwurde zu dem Zeitpunkt, als Cron den Neustart durchführen sollte, irgendetwas protokolliert?

Überprüfen Sie auch, ob der Cron-Dienst ausgeführt wird. Wenn ja, systemctl status cron.servicewird angezeigt, dass der Dienst aktiv und aktiviert ist. Der Cron-Dienst muss ausgeführt werden, damit Cron-Jobs ausgeführt werden können.

Es könnte auch daran liegen, dass Cron den Befehl zum Herunterfahren nicht finden kann. Versuchen Sie es /usr/sbin/shutdown -r nowin Cron.

Für Debian 12 und neuer

Die traditionellen Logdateienwurden systemd-journaldin Debian 12 ersetzt durch, sodass Sie nicht mehr in /var/log/syslogder Zeile using tools suchen können. Dies betrifft auch andere GNU/Linux-Distributionen. Sie können stattdessen jedoch verwenden und die Protokolle auch direkt dort filtern:grepjournalctl

journalctl -u cron

verwandte Informationen