
Tengo un sistema Linux Gentoo, que realiza un cronjob todos los días a las 3:10 de la mañana. Sin embargo, ningún archivo /etc
contiene información relacionada con este cronjob en particular, y el resultado crontab -l
es
# check scripts in cron.hourly, cron.daily, cron.weekly and cron.monthly
MAILTO=""
0 * * * * rm -f /var/spool/cron/lastrun/cron.hourly
1 3 * * * rm -f /var/spool/cron/lastrun/cron.daily
15 4 * * 6 rm -f /var/spool/cron/lastrun/cron.weekly
30 5 1 * * rm -f /var/spool/cron/lastrun/cron.monthly
*/10 * * * * test -x /usr/sbin/run-crons && /usr/sbin/run-crons
El directorio /etc/cron.daily
probablemente contenga el trabajo en cuestión, ¡pero por un momento a las 3:01! ¿Porqué es eso? ¿El cronjobn real está almacenado en otro lugar? ¿A Gentoo le toma 9 minutos darse cuenta de cómo ejecutar un trabajo?
Información adicional:
- Tengo un trabajo crontab diferente para las 13:20 (en cron.d) que se ejecuta exactamente a las 13:20 todos los días.
Respuesta1
Comprueba si no es de otro usuario:
getent passwd | while read r; do sudo -u $(echo $r | cut -d':' -f1) crontab -l; done
Respuesta2
crontab -l
solo enumera el crontab por usuario del usuario que llama. También hay un crontab del sistema, que sólo puede ser editado por root pero puede ejecutar trabajos como cualquier usuario. El crontab del sistema está en el archivo /etc/crontab
, con trabajos adicionales en archivos del directorio /etc/cron.d
.
Los directorios /etc/cron.daily
, /etc/cron.weekly
y /etc/cron.monthly
no están integrados por cron, sino que son atravesados por un trabajo enumerado en /etc/crontab
.