Cuando noté que el script de copia de seguridad que coloqué en /etc/cron.weekly en mi servidor Debian6 no se ejecuta, coloqué este pequeño script en él, para ver si el cronjob semanal se ejecutaba en absoluto:
#!/bin/bash
echo 'CRON RAN' > /var/log/cron-weekly-runcheck.log
lo guardé como
-rwxr-xr-x 1 root root 64 Jul 15 02:14 /etc/cron.weekly/runcheck.sh
Cuando revisé hoy, el archivo de registro que se suponía que debía crear no existía.
El crontab tiene el siguiente aspecto (que, según mi conocimiento, debería ser el crontab predeterminado de debian6):
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 * * 1 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 )
Todo lo que aparece del cronjob semanal en cualquier archivo de registro es esta línea:
Jul 16 06:47:01 wtwrp /USR/SBIN/CRON[29272]: (root) CMD (test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly ))
Nota cron.daily
al margen : parece funcionar ya que logrotate funciona. cron.hourly
no tiene guiones en el mismo.
¿Alguna idea sobre lo que podría estar yendo mal?
bash
cron
debian-squeeze
Cobra_Rápido
fuente
fuente
/var/spool/mail/root
si aún no se ha/etc/aliases
configurado para reenviar el correo raíz en algún lugar donde se pueda leer.cron.weekly
allí.Respuestas:
Los
cron.weekly
scripts se inician por lorun-parts
que omite todos los archivos con extensión. Cambiar el nombreruncheck.sh
aruncheck
y debería hacerfuente
comm1 || comm2 || comm3 || comm4
se ejecutará hasta que se devuelva el primer retval = 0 (de izquierda a derecha). El resto de los comandos encadenados están optimizados por el intérprete y NO se ejecutan en absoluto.
Si
test -x /usr/sbin/anacron
devuelve cero como retval, no se ejecutarán otros comandos.fuente