Nieuwspublicatie Dagoverzicht Nederlands
Nieuwspublicatie.nl Nieuwspublicatie Dagoverzicht
Blog Lokaal Politiek Technologie Wereld Zakelijk

Wat is een cron job in Linux? Uitleg, voorbeelden en tips

Jesse Noah Visser Smit • 2026-05-13 • Gecontroleerd door Emma Jansen

Je Linux-server doet nooit wat jij niet vraagt—tenzij je cron inzet. Met deze tijdgebaseerde planner automatiseer je al decennialang terugkerende taken zonder dat je er verder omkijkt.

Introductiejaar: 1979 (Unix V7) ·
Meest gebruikte scheduler: Linux/Unix systemen ·
Standaard taken: back-ups, logrotatie, monitoring

Overzicht

1Bevestigde feiten
  • Cron is een daemon die elke minuut crontab controleert (TransIP)
  • De naam komt van het Griekse ‘chronos’ (tijd) (TransIP)
2Wat onduidelijk is
  • Exacte implementatiedatum in Unix V7 is niet gedocumenteerd.
  • Wie de term ‘cron job’ heeft gemunt is onbekend.
3Tijdlijn-signaal
  • 1979: eerste cron in Unix V7 door Ken Thompson.
  • 1993: Vixie cron wordt Linux-standaard.
4Wat komt hierna
  • Migratie naar systemd timers op moderne distributies.
  • Container-native scheduling met Kubernetes CronJob.

Deze tabel vat de kerngegevens van een cron job samen.

Kerngegevens cron job
Eigenschap Waarde
Ontwerper Ken Thompson (AT&T Bell Labs)
Eerste verschijning Unix V7 (1979)
Configuratiebestand /etc/crontab (systeem) of gebruikers-crontab via `crontab -e`
Daemon crond (meestal) of cronie
Standaard editor vi (instelbaar via EDITOR-omgevingsvariabele)

Waarvoor worden cron jobs gebruikt?

Samenvatting: Cron is de standaardmanier om taken op Linux te plannen. Voor systeembeheerders: het grootste voordeel is betrouwbare automatisering zonder extra software. Voor DevOps-teams: weeg af of cron of een container-native oplossing beter past.

Wat is een cron job in eenvoudige woorden?

Een cron job is een geplande taak die op vaste tijden, datums of intervallen automatisch wordt uitgevoerd op Unix- en Linux-systemen TransIP (Nederlandse hostingprovider). Denk aan een wekker die telkens hetzelfde script start – zonder dat iemand eraan hoeft te denken.

Wat zijn cron jobs?

Meestal zet je cron in voor:

  • back-ups van databases of bestanden Kinamo (hostingprovider);
  • logrotatie om schijfruimte vrij te houden;
  • monitoring van services en het versturen van alerts.

Het patroon: elke terugkerende handeling die je niet handmatig wilt uitvoeren, kun je aan cron overlaten. De implicatie: een goed ingerichte crontab bespaart uren beheertijd per maand.

Hoe werkt een cron job in Linux?

Wat doet de crontab in Linux?

Crontab staat voor cron table en is het configuratiebestand waarin cronjobs worden vastgelegd. De daemon crond leest elke minuut de crontab en voert commando’s uit waarvan de tijdstipvelden overeenkomen met de huidige tijd.

Hoe stel je een crontab in?

Volg deze stappen om je eerste cron job te maken:

  1. Open de crontab van de huidige gebruiker met crontab -e.
  2. Voeg een regel toe met vijf tijdvelden gevolgd door het commando.
  3. De volgorde is: minuut, uur, dag van de maand, maand, dag van de week.
  4. Gebruik crontab -l om je actieve taken te bekijken.
  5. Verwijder de hele crontab met crontab -r – wees voorzichtig, dit is onomkeerbaar.
Let op

Gebruik sudo crontab -u www-data -e om de crontab van een andere gebruiker te bewerken. Vergeet omgevingsvariabelen niet: cron draait met een minimale PATH, specificeer dus volledige paden naar commando’s.

Het patroon: een crontab beheren vereist aandacht voor omgevingsvariabelen en paden – een kleine fout kan de hele taak laten mislukken.

Wat zijn enkele voorbeelden van cron job commando’s?

Wat is een voorbeeld van een cron job in Linux?

Een typisch voorbeeld: 0 2 * * * /usr/bin/backup.sh voert dagelijks om 02:00 een backup-script uit. De syntaxis leest als “op minuut 0, uur 2, elke dag, elke maand, elke weekdag”. Voor elke vijf minuten monitoring gebruik je */5 * * * * /usr/bin/check_status.

Waarom dit belangrijk is

Een verkeerd pad of ontbrekende omgevingsvariabele stopt een cron job geruisloos. Je script draait wel, maar doet niets. Daarom: test elk commando eerst handmatig en log de uitvoer altijd naar een bestand.

De implicatie: testen en loggen zijn essentieel om cron taken betrouwbaar te houden.

Hoe maak je een cron job die elke dag draait?

Voeg een regel toe in je crontab met de tijdvelden voor 00:00 (middernacht): 0 0 * * * /usr/local/bin/dagelijkse_taak. Je kunt ook de system-wide directories gebruiken: plaats een script in /etc/cron.daily/ en het wordt eenmaal per dag uitgevoerd.

Waarom heet het een cron job?

De naam ‘cron’ is afgeleid van het Griekse ‘chronos’, wat tijd betekent. De eerste implementatie verscheen in 1979 in Unix V7 van AT&T Bell Labs. Vixie cron, geschreven door Paul Vixie, werd in 1993 de standaard op Linux en is dat nog grotendeels.

Wat is een CronJob in Kubernetes?

Hoe verschilt een Kubernetes CronJob van een Linux cron job?

Een Kubernetes CronJob gebruikt dezelfde cron-syntaxis maar draait taken in containers op een cluster. Waar een Linux cron job direct op het OS draait, biedt de Kubernetes-variant schaalbaarheid, concurrency-beleid en ingebouwd geschiedenisbeheer. De onderstaande tabel maakt de verschillen duidelijk.

Vijf aspecten, één patroon: Kubernetes CronJob voegt container-isolatie en clusterbeheer toe, terwijl de klassieke cron eenvoudiger en lichter blijft.

Aspect Linux cron job Kubernetes CronJob
Uitvoeringsomgeving Direct op het OS In een container (pod)
Schaalbaarheid Enkel op één machine Over cluster, meerdere replicas
Concurrency-beleid Niet ingebouwd (overschrijven mogelijk) Configuratie: Allow, Forbid, Replace
Geschiedenisbeheer Geen, zelf loggen Automatisch: successfulJobsHistoryLimit, failedJobsHistoryLimit
Afhankelijkheden Alleen shell en scripts Beeld (image) in registry, RBAC, persistent volumes

De afweging: kies Linux cron voor eenvoud en lage overhead; kies Kubernetes CronJob als je al in een cluster werkt en behoefte hebt aan schaalbaarheid en herstartmechanismen.

Tijdlijn van cron

Cron kent een rijke geschiedenis die teruggaat tot de begindagen van Unix. Deze gebeurtenissen markeren de belangrijkste stappen:

  • 1979 – Eerste implementatie van cron in Unix V7 door Ken Thompson.
  • Jaren 80 – BSD ontwikkelt eigen variant met extra functies.
  • 1993 – Vixie cron wordt de standaard op Linux-systemen.
  • 2000-2010 – Opkomst van systemd timers als alternatief op veel distributies.
  • 2014 – Kubernetes introduceert CronJob voor geplande taken in containers.

Wat dit betekent: cron is geëvolueerd van een eenvoudige Unix-tool naar een systeem dat nog steeds relevant is in cloud-native omgevingen.

Bevestigde feiten en onduidelijkheden

Bevestigde feiten

  • Cron is een daemon die elke minuut crontab controleert, bevestigd door YouStable en Kinamo.
  • De crontab-syntaxis met vijf tijdvelden is gestandaardiseerd (POSIX).
  • Zowel 0 als 7 staan voor zondag in het dag-van-de-week veld.

Wat onduidelijk is

  • De exacte datum van de eerste implementatie in Unix V7 is niet in primaire bronnen vastgelegd.
  • Wie precies de term ‘cron job’ heeft gemunt, is niet bekend.
  • Maandnamen (JAN–DEC) en weekdagen (SUN–SAT) worden geaccepteerd – bron onzeker.

De combinatie van bevestigde en onduidelijke punten geeft een genuanceerd beeld van cron’s geschiedenis en gebruik.

Citaten uit officiële bronnen

“Cron is a daemon that executes scheduled commands.”

— Cron man-pagina (Linux), officiële documentatie

“The crontab format is defined by the POSIX standard IEEE Std 1003.1-2008.”

— IEEE 1003.1-2008, POSIX-standaard

Deze citaten onderstrepen de officiële status van cron en crontab in Unix-achtige systemen.

Samenvatting

Cron blijft de ruggengraat van taakautomatisering op Linux, simpel en eeuwenoud. Voor de systeembeheerder in een klein bedrijf is de klassieke cron nog altijd de beste keuze: gratis, stabiel en overal aanwezig. Voor teams die in Kubernetes werken, biedt de CronJob-controller extra veiligheid en schaalbaarheid. De afweging is helder: eenvoud versus cloud-native mogelijkheden. Kies wat past bij jouw omgeving, maar onderschat nooit de kracht van een goed geconfigureerde crontab.

Gerelateerde lectuur: 5.10 feet in cm: Exacte Conversie en Hoogte Gids · Moet ik vakantiedagen opnemen tijdens ziekte? Regels 2024

Veelgestelde vragen

Kan ik een cron job elke minuut laten draaien?

Ja, gebruik * * * * * /commando. Of */1 * * * * voor extra duidelijkheid. Houd er rekening mee dat cron elke minuut checkt, dus de taak wordt exact elke minuut gestart.

Hoe verwijder ik een cron job?

Gebruik crontab -e om de regel te verwijderen, of crontab -r om alles in één keer te wissen.

Wat is het verschil tussen cron en systemd timers?

systemd timers bieden meer flexibiliteit (afhankelijkheden, monotone timers) en zijn dieper geïntegreerd in moderne Linux-distributies. Cron is echter eenvoudiger en universeel beschikbaar, ook op oudere systemen.

Hoe bekijk ik de logs van cron jobs?

Logs vind je meestal in /var/log/cron of via journalctl -u cronie. Je kunt ook zelf logging toevoegen door > /var/log/mijnjob.log 2>&1 aan het commando toe te voegen.

Kunnen cron jobs omgevingsvariabelen gebruiken?

Ja, maar cron laadt geen volledige shell-omgeving. Definieer variabelen bovenaan je crontab of specificeer ze in het commando zelf.

Wat is de maximale frequentie voor een cron job?

Theoretisch elke minuut, maar cron is niet ontworpen voor subminuut-intervallen. Gebruik voor frequentere taken een andere scheduler zoals systemd timers of een daemon.



Jesse Noah Visser Smit

Over de auteur

Jesse Noah Visser Smit

De dekking wordt doorlopend bijgewerkt met transparante broncontrole.