Er zijn phishingmails in omloop die uit naam van TransIP worden verstuurd. Twijfel je over de echtheid van een e-mail van TransIP, klik dan niet op linkjes en neem contact met ons op via je controlepaneel of via support@transip.nl. Lees meer over phishing in onze Knowledge Base: https://www.transip.nl/knowledgebase/artikel/205-wat-is-phishing/
Hulpartikel overzicht

Hulpartikel

Wat is een cronjob en crontab?

Voor het uitvoeren van taken (commando's of shell scripts) op een vaste datum/tijdstip, gebruik je binnen Linux een 'cron', ook bekend als 'cronjob'. Cron is de naam van de taakplanner die al sinds 1975 in Unix systemen hiervoor gebruikt wordt.

Een veel gebruikte toepassing is bijvoorbeeld het automatiseren van systeemonderhoud, of synchroniseren van bestanden naar een back-up server.

Crontab staat voor cron table en is een configuratiebestand dat een overzicht van cronjobs bevat. Voor het uitvoeren van die cronjobs gebruikt crontab cron.


Cronjobs plannen

 

Voor het plannen van cronjobs op je server kan iedere gebruiker een eigen crontab bestand gebruiken, maar er is vaak ook een serverbrede crontab. Je opent crontab met:

crontab -e

Voor de serverbrede crontab gebruik je sudo:

sudo crontab -e

 

Open je crontab voor het eerst, dan krijg je de vraag of je als tekst editor nano, vim basic of tiny wil gebruiken. Je bent vrij om je favoriete editor te gebruiken.

opening your first crontab

Eenmaal geopend krijg je een uitgecommentarieerde instructie te zien voor het gebruik van crontab:

crontab overview

Om je crontab overzichtelijk te houden ben je vrij deze instructie te verwijderen.


 

Iedere cronjob die je aanmaakt in crontab stel je in op één enkele regel en is opgebouwd uit twee delen: een deel waarin je aangeeft wanneer het commando uitgevoerd moet worden en een deel waarin je aangeeft welke taak uitgevoerd wordt:

* 0 * * * je_commando_of_script 
  • Vervang je_commando_of_script door een shell-script of commando, bijvoorbeeld:
    * 0 * * * rsync -auv "ssh -p 1234 etc" 
    # of:
    * 0 * * * ~/bin/script.sh
    
  • De sterretjes geven aan wanneer de cronjob wordt uitgevoerd. In het bovenstaande voorbeeld geeft de 0 aan dat het commando iedere dag om 0:00 zou worden uitgevoerd. De sterretjes in een cronjob staan voor de volgende waardes:
    # ┌───────────── minuut (0 - 59)
    # │ ┌───────────── uur (0 - 23)
    # │ │ ┌───────────── dag van de maand (1 - 31)
    # │ │ │ ┌───────────── maand (1 - 12)
    # │ │ │ │ ┌───────────── dag van de week (0 - 6) (Zondag tot Zaterdag)
    # │ │ │ │ │
    # │ │ │ │ │
    # │ │ │ │ │
    # * * * * * je_commando_of_script 
    De dag van de week in het laatste veld gaat in sommige systemen tot 7, waarbij 7 net als 0 voor zondag staat.

 

Naast het instellen van de cronjob via de sterretjes zijn er ook enkele definities vooraf ingesteld die je kunt gebruiken:

  • @yearly / @annually: het commando wordt uitgevoerd om 0:00 op 1 january
  • @monthly: het commando wordt uitgevoerd om 0:00 de eerste dag van de maand
  • @weekly: het commando wordt iedere zondag om 0:00 uitgevoerd
  • @daily / @ midnight: het commando wordt iedere dag om 0:00 uitgevoerd
  • @hourly: het commando wordt ieder uur uitgevoerd
  • @reboot: het commando wordt iedere keer dat de server start uitgevoerd

Dit zou er bijvoorbeeld uit zien als volgt:

@daily je_commando_of_script

 

Wanneer je daarna de crontab opslaat en afsluit, krijg je als alles goed is gegaa een melding te zien die lijkt op de volgende:

"crontab.aB1cde/crontab" 25L, 917C written
crontab: installing new crontab

 

Wil je via command-line controleren welke cronjobs er staan ingesteld voor je huidige gebruiker? Gebruik dan het commando:

crontab -l

Voor systeembrede cronjobs gebruik je sudo:

sudo crontab -l

 

Daarmee zijn we aan het eind gekomen aan dit artikel over cronjobs. Mocht je aan de hand van deze handleiding nog vragen hebben, aarzel dan niet om onze supportafdeling te benaderen. Je kunt hen bereiken via de knop 'Neem contact op' onderaan deze pagina.

Wil je dit artikel met andere gebruikers bespreken, laat dan vooral een bericht achter onder 'Reacties'.

Heb je ook een goed idee?

Stuur jouw idee in! Met genoeg stemmen komt jouw idee op onze wishlist!

Heeft dit artikel je geholpen?

Maak een account aan of log in om een beoordeling achter te laten.

Reacties

Maak een account aan of log in om een reactie te plaatsen.

Kom je er niet uit?

Ontvang persoonlijke hulp van onze supporters

Neem contact op