Típicamente listamos el crontab del usuario actual ejecutando crontab -l
. Pero, ¿qué pasa si queremos listar como root las tareas programadas de otro usuario? Este artículo explica cómo.
El comando crontab -l
permite listar las tareas programadas del usuario actual, por ejemplo:
root@linuxito:~# crontab -l | grep -v '^#' 37 2 * * 2 /usr/bin/certbot renew --quiet --post-hook "/etc/init.d/nginx reload" 10 10 * * * /root/scripts/check_disk_space.bash 11 11 * * * /root/scripts/verify_certs.sh >> /var/log/verify_certs.log
Sin embargo (como usuario root) es posible listar las tareas de cualquier otro usuario, pasándolo como parámetro a la opción -u
. Ejemplos:
root@linuxito:~# crontab -l -u www-data | grep -v '^#' no crontab for www-data
root@vaio:~# crontab -l -u emi | grep -v '^#' 40 * * * * /home/emi/go/bin/drive push -quiet -upload-rate-limit 512 ~/Drive
Si se desea conocer quiénes son los usuarios que tienen tareas programadas (crontabs) definidas, basta con listar el directorio /var/spool/cron/crontabs
. Ejemplos:
root@linuxito:~# ll /var/spool/cron/crontabs total 12K drwx-wx--T 2 root crontab 4.0K Aug 4 18:18 . drwxr-xr-x 3 root root 4.0K Jul 8 2019 .. -rw------- 1 root crontab 1.5K Aug 4 18:18 root
root@vaio:~# ll /var/spool/cron/crontabs total 4 -rw------- 1 emi crontab 1164 Nov 27 15:29 emi
Para más información, consultar la página de manual: man crontab
.