GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment changer le niveau de journalisation Cron ?

J'ai remplacé exec cron avec exec cron -L 15 l'exécution sudo service cron reload , sudo service cron restart mais rien n'a changé. Cron n'enregistre pas la fin des travaux et n'enregistre pas les travaux ayant échoué. Je n'avais aucun problème dans Ubuntu 14.04, mais maintenant j'ai ce problème dans Ubuntu 16.04. Qu'est-ce que je fais de mal ?

Pas à pas :
J'ai d'abord modifié /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

Alors maintenant c'est

$ 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

J'ai fait la même configuration dans mon Ubuntu 16.04 ainsi que sur Ubuntu 14.04 sur l'autre PC.

Le journal Cron dans Ubuntu 14.04 est le suivant :

$  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)

Ainsi, vous pouvez voir la deuxième ligne avec une notification d'erreur sur la commande inexistante foo . Mais dans Ubuntu 16.04, il n'y a pas de notification d'erreur dans le journal :

Aug 26 16:25:01 my CRON[7259]: (y) CMD (foo # JOB_ID_129)

Meilleure réponse

À partir d'Ubuntu 15.04, upstart en utilisant /etc/init/*.conf est remplacé par systemd en utilisant les fichiers de configuration dans /lib/systemd/system/ et /etc/systemd/system/ . Bien qu'un fichier /etc/init/cron.conf existe toujours dans Ubuntu 16.04, le script normalement utilisé pour démarrer cron est maintenant /lib/systemd/system/cron.service . Si vous souhaitez ajouter des options supplémentaires, modifiez ce fichier avec

sudo systemctl edit --full cron

et remplacer la ligne

ExecStart=/usr/sbin/cron -f $EXTRA_OPTS

au revoir. g.

ExecStart=/usr/sbin/cron -L 15 -f $EXTRA_OPTS

Pour recharger la configuration, exécutez sudo systemctl restart cron ou tout simplement redémarrer. Vous pouvez tester avec quelle commande exacte un service a été démarré en utilisant systemctl status , e. g. pour cron (voir dernière ligne) :

> 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. Comment changer les applications par défaut dans Ubuntu

  2. Comment changer le nom d'hôte sur Ubuntu 18.04

  3. Comment changer le fuseau horaire dans Ubuntu ?

  4. Comment changer le nom d'hôte sur Ubuntu

  5. Comment changer l'arrière-plan de mon bureau dans Ubuntu ?

Comment changer le port SSH dans Ubuntu

Comment changer le nom d'hôte sur Ubuntu 16.04 LTS

Comment changer le nom d'hôte sur Ubuntu 20.04 LTS

Comment changer le fuseau horaire sur Ubuntu 20.04 LTS

Comment changer la couleur du dossier dans Ubuntu 22.04

Comment changer le mot de passe sur Ubuntu