Nahradil jsem exec cron
s exec cron -L 15
spusťte sudo service cron reload
, sudo service cron restart
ale nic se nezměnilo. Cron nezaznamenává konec úloh a nezaznamenává neúspěšné úlohy. Neměl jsem žádný problém v Ubuntu 14.04, ale nyní mám tento problém v Ubuntu 16.04. Co dělám špatně?
Krok za krokem:
Nejprve jsem změnil /etc/init/cron.conf:
sudo sed -i 's|exec cron$|exec cron -L15|' /etc/init/cron.conf && sudo restart cron && cat /etc/init/cron.conf
Takže teď je
$ cat /etc/init/cron.conf
# cron - regular background program processing daemon
#
# cron is a standard UNIX program that runs user-specified programs at
# periodic scheduled times
description "regular background program processing daemon"
start on runlevel [2345]
stop on runlevel [!2345]
expect fork
respawn
exec cron -L 15
Udělal jsem stejnou konfiguraci ve svém Ubuntu 16.04 i na Ubuntu 14.04 na jiném počítači.
Přihlášení Cron v Ubuntu 14.04 je následující:
$ grep CRON /var/log/syslog
Aug 26 16:05:01 y1404 CRON[6825]: (y) CMD (foo # JOB_ID_1)
Aug 26 16:05:01 y1404 CRON[6824]: (CRON) error (grandchild #6825 failed with exit status 127)
Takže můžete vidět druhý řádek s upozorněním na chybu o neexistujícím příkazu foo
. Ale v Ubuntu 16.04 není v protokolu žádné upozornění na chybu:
Aug 26 16:25:01 my CRON[7259]: (y) CMD (foo # JOB_ID_129)
Nejlepší odpověď
Od Ubuntu 15.04 dále, začátek pomocí /etc/init/*.conf
je nahrazeno systemd pomocí konfiguračních souborů v /lib/systemd/system/
a /etc/systemd/system/
. Ačkoli soubor /etc/init/cron.conf
stále existuje v Ubuntu 16.04, což je skript, který se běžně používá ke spuštění cron
nyní je /lib/systemd/system/cron.service
. Pokud chcete přidat další možnosti, upravte tento soubor pomocí
sudo systemctl edit --full cron
a nahraďte řádek
ExecStart=/usr/sbin/cron -f $EXTRA_OPTS
sbohem. g.
ExecStart=/usr/sbin/cron -L 15 -f $EXTRA_OPTS
Chcete-li znovu načíst konfiguraci, spusťte sudo systemctl restart cron
nebo jen restartovat. Pomocí systemctl status
můžete otestovat, jakým přesným příkazem byla služba spuštěna , e. G. pro cron
(viz poslední řádek):
> systemctl status cron
● cron.service - Regular background program processing daemon
Loaded: loaded (/lib/systemd/system/cron.service; enabled; vendor preset: enabled)
Active: active (running) since So 2017-08-27 09:56:18 CEST; 1h 15min ago
Docs: man:cron(8)
Main PID: 26021 (cron)
CGroup: /system.slice/cron.service
└─26021 /usr/sbin/cron -f