Cron

Última modificació: novembre de 2016

-crontab -l llista de feines

-crontab -e, edicio del fitxer de forma segura. No es aconsellable editar /etc/crontab

"a ma"

-camps de temps: min hour day month day_of_week

Valors possibles:

min 0-59

hour 0-23

day 0-31

month 0-12

day_of_week 0-7

-Combinacions que podem fer servir:

1-5 tots els valors de 1 a 5: 1,2,3,4,5

1,3 valors 1 i 3

1-5,7 valors de 1 a 5 i el 7

0-12/3 0,3,6,9 i 12

*/3 per exemple si es al cam de les hores: 0.3.6.9.12.15.18.21

-Tenim l'arxiu /etc/cron.allow per permetre donar permis a alguns usuaris, i l'arxiu

/etc/cron.deny per no permetre l'acces. Per seguretat i estalvi de recursos

es bona practica no crear un deny, si no millor un cron.allow i nomes permetre

uns determinats usuaris.

Un exemple:

Tots els dilluns a les 00:30, executa el meu script:

30 0 * * 1 /root/scripts/elmeuscript
Altres:
MAILTO=root
# m h  day month        d_o_w           command
  0 1  *     *       1          /root/scripts/estat_raids_detall
  0 1  *     *     2,3,4,5,6,7  /root/scripts/estat_raids
  0 3  *     *       1,4        /root/scripts/llistat_dades1
  0 3  *     *       2,5        /root/scripts/llistat_dades2
  0 3  *     *       3,6        /root/scripts/llistat_multimedia
  0 5  *     *       5          /root/scripts/arj_dades1
  0 5  *     *       6          /root/scripts/arj_dades2
  0 5  *     *       7          /root/scripts/arj_multimedia   
  0 7.11.15.18.21.24   * * *    /root/scripts/restart_twonky >/dev/null 2>&1
*/5 *  *     *       *          /root/scripts/estat_serveis_cada_5_min
El /dev/null 2>&1 de la línia del restart_twonky serveix per a tenir cap tipus de sortida (d'error p.e.) cap als logs del sistema o cap al correu del generador del cron.

Tenim algunes opcions per a substituir els 5 camps de temps:

  @yearly    :    Run once a year, ie.  "0 0 1 1 *"
  @annually  :    Run once a year, ie.  "0 0 1 1 *"
  @monthly   :    Run once a month, ie. "0 0 1 * *"
  @weekly    :    Run once a week, ie.  "0 0 * * 0"
  @daily     :    Run once a day, ie.   "0 0 * * *"
  @hourly    :    Run once an hour, ie. "0 * * * *"