5.12. Crontab

Crontab er et smart system til automatisk at køre programmer på givne tidspunkter, såsom daglig backup. Det er en standarddel af et UNIX system og er derfor altid med i Linux.

Man kan få kørt vilkårlige programmer på vilkårlige tidspunkter, f.eks. hvert minut, time, dag, ugedag eller månedsdag. I filen /etc/crontab retter man normalt ikke, men denne fil viser, at der køres jobs hver time fra /etc/cron.hourly til tilsvarende hver dag, uge og måned via /etc/cron.daily, /etc/cron.monthly og /etc/cron.weekly. For en almindelig bruger er det normalt, at man føjer de kommandoer man vil have kørt på et givet tidspunkt, til filen ~/.crontab og kører kommandoen crontab ~/.crontab.

Syntaksen for alle disse crontab filer er den samme: En kommando per linje og i rækkefølge fra venstre mod højre, minut (0-59), time (0-23), månedsdag (0-31), måned (0-12), ugedag (0-7, hvor 0 og 7 begge er søndag) og endelig den kommando du vil have udført. Hvert felt adskilles af et mellemrum, og hvis man vil have, at f.eks. alle dage køres programmet, så indsæt en "*" for månedsdag og måned.

Vi giver nu et eksempel, hvor vi hver morgen kl. 7 fra mandag til fredag sender brugeren root en mail med, hvor meget load der er på maskinen.

0 7 * * 1-5 uptime | mail root
Brug man -a crontab til at læse mere om crontab.