GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak změnit úroveň protokolu Cron?

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

Ubuntu
  1. Jak změnit časové pásmo v Ubuntu?

  2. Jak změnit název hostitele na Ubuntu

  3. Jak změním pozadí plochy v Ubuntu?

  1. Jak změnit výchozí aplikace v Ubuntu

  2. Jak změnit název hostitele na Ubuntu 18.04

  3. Jak změnit název hostitele na Ubuntu 20.04

  1. Jak změnit kurzor myši na Ubuntu

  2. Jak změnit uživatelské heslo v Ubuntu

  3. Jak změnit název hostitele v Ubuntu 18.04