Doorwinterde Linux gebruikers weten dat cron gebruikt wordt om taken op gezette tijden uit te voeren. De crontab opdracht wordt gebruikt om taken in het cron bestand met de geplande taken te beheren. Corntab is een webgebaseerde dienst om cron taken te ontwerpen, daarna kan je deze kopiƫren en plakken in het cron bestand.
Er zijn andere grafische omgevingen om het cron bestand te beheren. Als je echter geen extra software wilt installeren, is een webpagina zoals Corntab gooud waard.
Het gebruik van cron is duidelijk, alles vanaf het plannen van back-ups tot het uitvoeren van eigen scripts op bepaalde tijden.
Als voorbeeld plaatsen we elke minuut een tijdstempel in een bestand, eerst met terminal opdrachten. Daarna gebruiken we Corntab om hetzelfde te bereiken. Zo zie je het voordeel van Corntab. Het plaatsen van een tijdstempel in een bestand is ideaal om te testen of de geplande crontaken werken.
Open een terminal.
Voor we verder gaan, wat informatie ophalen.
De handleiding van crontab kan je opvragen met behulp van de opdracht
man crontab
Daarnaast staat er veel informatie op internet, maar de handleiding (manual) bevat steeds de basisinformatie.
De opdracht crontab gebruik je als volgt:
crontab [ -u user ] file
crontab [ -u user ] [ -i ] { -e | -l | -r } [-s]
Sommige opdrachten hebben om ze uit te voeren root rechten nodig. Indien dit nodig is, werk je als root gebruiker via de su of de sudo opdracht.
Om uw crontab aan te passen, gebruik je:
crontab -e
-Of-
sudo crontab -e
Om een opdracht op verschillende tijdstippen uit te voeren kan je de verschillende tijdstippen scheiden door komma's. Gebruik een slash om de opdrachten om de zoveel tijd uit te voeren.
OpenSUSE 12.3 gebruikt voor het aanpassen van de crontab de editor vim. Om onze taak te plannen, activeer je met een druk op de i toets de Insert mode (tekst invoegen) van vim. Daarna typ je de volgende taak:
* * * * * echo "Tot op de minuut: $(date)" >> /tmp/minuten.log ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ -- INSERT -- 1,1 All
Met de Esc toets verlaat je de Insert mode. Om de crontab op te slaan, typ je :w Enter (write). De editor verlaten doe je door :q Enter (quit) te typen. Nu wordt er in het bestand /tmp/minuten.log elke minuut een tekst geschreven.
Na zes minuten krijg je:
dany@linux-s7xo:~> more /tmp/minuten.log
Tot op de minuut: Sat Aug 10 13:02:01 CEST 2013
Tot op de minuut: Sat Aug 10 13:03:01 CEST 2013
Tot op de minuut: Sat Aug 10 13:04:01 CEST 2013
Tot op de minuut: Sat Aug 10 13:05:01 CEST 2013
Tot op de minuut: Sat Aug 10 13:06:01 CEST 2013
Tot op de minuut: Sat Aug 10 13:07:01 CEST 2013
Om de datum om de twee minuten weg te schrijven, pas je crontaak als volgt aan:
*/2 * * * * echo "Tot op de minuut: $(date)" >> /tmp/minuten.log
Gebruik */n waarbij n een positief geheel getal is, om een taak om de n minuten, of uren, enz. uit te voeren.
Om de datum elke maandag en vrijdag om 5:30 's morgens weg te schrijven, gebruik je:
30 5 * * 1,5 echo "Tot op de minuut: $(date)" >> /tmp/minuten.log
Oefen het plannen van crontaken door weg te schrijven (echo) naar logbestanden. Ga daarna verder met het plannen van scripts en applicaties.
Nu kunnen we hetzelfde proberen met Corntab, de web gebaseerde cron editor waarmee je door te klikken een crontaak kunt opbouwen.
Deze keer maken we een crontaak om elke twee minuten op donderdag en vrijdag in januari, februari, maart en april de datum weg te schrijven in een logbestand.
Eerst klik je op every n minutes en verplaats de instelschuif naar Every 2 minutes.
Klik en open de sectie Month, klik op each selected month en activeer Jan, Feb, Mar, Apr.
Klik en open de sectie Day of week, klik op each selected day of the week en activeer Thu, Fri.
Klik en open uiteindelijk de sectie Command en typ de uit te voeren taak (opdracht). Daarna kopieer je de volledige cron code en plak je ze in de crontab editor. Plakken in een KDE terminal doe je met de toetscombinatie Ctrl + Shift + V (of met de opdracht Plakken in het menu Bewerken).