Comment arrêter le rapport par e-mail depuis Cron <root @ machine> (toutes les heures)


15

J'utilise Ubuntu 12.04, j'ai configuré "ssmtp" avec mon compte gmail et maintenant je reçois toutes les heures un email avec un rapport, voici un exemple:

From: root <my@gmail.com> Date: 2012/8/13 Subject: Cron <root@one> [
-x /usr/lib/php5/maxlifetime ] && [ -d /var/lib/php5 ] && find /var/lib/php5/ -depth
-mindepth 1 -maxdepth 1 -type f -cmin
+$(/usr/lib/php5/maxlifetime) ! -execdir fuser -s {} 2>/dev/null \; -delete To: root

Failed loading /usr/lib/php5/20090626/xdebug.so: 
/usr/lib/php5/20090626/xdebug.so: cannot open shared object file: No
such file or directory

Quelques informations supplémentaires:

$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=12.04
DISTRIB_CODENAME=precise
DISTRIB_DESCRIPTION="Ubuntu 12.04 LTS"

Plus...

$ sudo crontab -l -u root
no crontab for root

Plus...

$ nano /etc/crontab
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# m h dom mon dow user  command
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly 
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily ) 
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts
--report /etc/cron.weekly ) 
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#

J'ai commenté la ligne 17 * * * * root cd / && run-parts --report /etc/cron.hourly, mais l'email arrive toujours.

Réponses:


13

Ajoutez simplement ci-dessous à /etc/crontab

MAILTO=""

pour empêcher crontab d'envoyer des e-mails, modifiez-le /etc/sysconfig/crondet ajoutez-le CRONDARGS='-m off'.
Enregistrez et redémarrez crond.


Il semble que cette ligne doive être ajoutée à chaque fichier crontab voulu réduit au silence (au moins d'après mes tests). méfiez-vous également que les utilisateurs crons vivent ailleurs: serverfault.com/a/325344/210994
— ThorSummoner

@ThorSummoner Lorsque vous mentionnez " ... chaque fichier crontab ... " se trouve-t-il dans la crontab elle-même, ou dans le script, sous la ligne shebang?
— 3kstc

8

Lorsque cron démarre un processus, il capture toute sortie qui atteint stdout et stderr et l'envoie dans un e-mail. Pour éviter ces e-mails, vous pouvez rediriger la stdout et la stderr, soit vers un fichier journal que vous surveillez, soit / dev / null, si cela vous est égal.

17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly 2>&1 > /dev/null

Salut! Merci de me répondre si vite! J'ai trouvé ce problème qui, je pense, est à l'origine du problème: bugs.launchpad.net/ubuntu/+source/php5/+bug/876387 Donc, jusqu'à ce que le problème soit résolu, je vais appliquer votre solution! Merci encore! nonox
— user83162

J'aime cette réponse car elle peut désactiver les mails pour un travail spécifique, plutôt que le MAILTO = "" qui désactiverait tous les mails cron.
— Mike
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.