|
Search |
Unix-pohjaisissa käyttöjärjestelmissä, kuten Linuxissa, komentojen ajastaminen tehdään crontab-ohjelman avulla. Tehtävät suoritetaan, kun määritelty aika ja päivämäärä täsmäävät nykyhetkeen. Administraattori voi ajastaa esimerkiksi varmuuskopioinnin, palvelimen monitoroinnin tai haluamansa skriptin... Konfiguroiminen Pääkonfigurointi-tiedosto /etc/crontab sisältää seuraavat tiedot: SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root HOME=/ * * * * * käyttäjä komento Neljä ensimmäistä riviä määrittelevät suoritettavien cron-tehtävien ympäristön. SHELL-määrittää käytettävän shellin, joka on tässä tapauksessa bash. PATH määrittää polun suoritettaviin komentoihin. MAILTO määrittää lähettäjän kenelle suoritetuista tehtävistä lähetetään sähköpostia. Jos se on tyhjä, sähköpostia ei lähetetä. HOME määrittää komentojen tai skriptien käyttämän kotikansion. Ennen komentoa määritellään sen suorittamishetki. Tähti (*) toimii jokaisena arvona. Jos suoritettava kuukausi on määritelty tähdellä, komento suoritetaan jokaisena kuukautena, ottaen kuitenkin huomioon myös muut arvot. Viiva (-) kahden numeron välissä tarkoittaa kumpaakin numeroa, sekä niiden välillä olevia lukuja. Esimerkiksi 1-4 tarkoittaa lukuja 1, 2, 3 ja 4. Numerot voi erotella pilkun (,) avulla. Esimerkiksi 1, 2, 4 tarkoittaa lukuja 1, 2 ja 4. Kauttaviivaa (/) voidaan käyttää, jos halutaan suorittaa toiminto esimerkiksi kerran kolmessa kuukaudessa (*/3). Esimerkkejä: ^ SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root HOME=/ 1 * * * * root /polku/komentoon # Tämä komento suoritetaan tunneittain, ensimmäisellä minuutilla 20 4 * * * root /polku/komentoon # Tämä komento suoritetaan päivittäin, kello 4.20 20 4 * * 0 root /polku/komentoon # Tämä komento suoritetaan viikoittain, kello 4.20 sunnuntaina tai maanantaina 20 4 1 * * root /polku/komentoon # Tämä komento suoritetaan kuukausittain, kello 4.20 jokaisen kuukauden ensimmäisenä päivänä Skriptin ajastaminen Ensiksi sinun pitää varmistaa, että skripti voidaan suorittaa komentorivillä. Jos se on PHP-skripti, aseta sen ensimmäiselle riville #!/usr/local/bin/php. Jos se on Perl-skripti, aseta sen ensimmäiselle riville #!/usr/bin/perl. Jos se on shell-skripti, aseta sen ensimmäiselle riville #!/bin/bash. Varmista myös, että käyttäjällä on suoritusoikeudet kyseiseen skriptiin: lauri@ovh:~$ ls -la -rwx------ 1 lauri lauri 294 2010-04-12 12:14 skripti Suoritusoikeuden voi puuttuessa lisätä esimerkiksi seuraavasti: lauri@ovh:~$ sudo chmod 700 skripti Skriptin toimivuus kannattaa testata komentorivillä ennen sen lisäämistä croniin: lauri@ovh:~$ ./skripti |