Contiene información acerca de los trabajos que se van a ejecutar. Cada usuario tiene un archivo crontab que se guarda en el directorio /var/spool/cron. Cada archivo tendrá un nombre que será el del usuario que creo cada tab. La única diferencia entre /etc/crontab y los crontabs de usuario es que el /etc/crontab agrega un campo adicional donde se especifica bajo que usuario se ejecutarán las tareas. Ejemplo:
@reboot root kinit -k host/pzosdgstdeb1$ -c /tmp/krb5cc_0
* */7 * * * root kinit -k host/pzosdgstdeb1$ -c /tmp/krb5cc_0
@reboot postfix kinit -k -t /var/spool/postfix/etc/krb5.keytab -c /var/spool/postfix/tmp/krb5cc_107
* */7 * * * postfix kinit -k -t /var/spool/postfix/etc/krb5.keytab -c /var/spool/postfix/tmp/krb5cc_107
A continuación se ejecuta el script: /home/user/test.pl cada 5 minutos.
*/5 * * * * /home/user/test.pl
.---------------- minuto (0 - 59)
| .------------- hora (0 - 23)
| | .---------- día del mes (1 - 31)
| | | .------- mes (1 - 12) O jan,feb,mar,apr ... (los meses en inglés)
| | | | .---- día de la semana (0 - 6) (Domingo=0 o 8) O sun,mon,tue,wed,thu,fri,sat (los días en inglés)
| | | | |
* * * * * comando para ser ejecutado
Crontab NO soporta variables de entorno
Editar crontab de un usuario en particular
crontab [ -u usuario ] fichero
crontab [ -u usuario ] { -l | -r | -e }
La opción -u se utiliza para indicar el crontab de usuario que queremos administrar. Sólo root podrá usar la orden crontab con esta opción.
La opción -e se utiliza para editarlo
Ejemplo: Evitar que Amule se cierre solo
1) Creamos el archivo amule.cron (touch /home/adrian/amule.cron) y colocamos en el:
#!/bin/sh
/sbin/pidof amule >/dev/null
if [ $? != 0 ]
then
exec /usr/bin/amule
fi
2) Luego lo hacemos ejecutable:
chmod +x /home/adrian/amule.cron
3) Editamos nuestro crontab (crontab -e) y colocamos en el:
*/1 * * * * export DISPLAY=:0 && /home/adrian/amule.cron
Edito el crontab y no me lo muestra completo, pero si lo visualizo si. Por que ?
Gracias