Cron on apuohjelma Linux-käyttöjärjestelmän tehtävien ajoittamiseen. Sen avulla voit suorittaa skriptejä tai komentoja automaattisesti tiettyinä aikoina, tietyin väliajoin tai tapahtumina.
Jotta voit käyttää Cronia, sinun on luotava crontab-tiedosto
, joka sisältää luettelon tehtävistä ja aikaväleistä, jolloin ne on suoritettava. Jokainen tehtävä crontab-tiedostossa on merkkijono, joka koostuu viidestä välilyönneillä erotetusta kentästä:
* * * * * command_to_execute
- - - - -
| | | | |
| | | | +----- day of the week (0 - 6) (Sunday = 0 or 7)
| | | +------- month (1 - 12)
| | +--------- day of the month (1 - 31)
| +----------- hour (0 - 23)
+------------- minutes (0 - 59)
*
tarkoittaa mitä tahansa arvoa, esimerkiksi jos minutes-kentässä on *
, tehtävä suoritetaan joka minuutti. Jos haluat asettaa kentälle tietyn arvon, esimerkiksi joka päivä kello 3 aamulla, kirjoita 0 3 * * * * * *
.
Voit luoda tai muokata crontab-tiedostoa komennolla crontab -e. Jokaisella käyttäjällä voi olla oma crontab-tiedostonsa, samoin kuin järjestelmätiedosto /etc/crontab
, joka sisältää root-käyttäjänä suoritettavia tehtäviä.
On olemassa cronjob-komento
, jonka avulla voit suorittaa tehtäviä Docker-konttien sisällä. Se toimii samalla tavalla kuin crontab
, mutta tehtävät voidaan suorittaa kontin sisällä isäntäjärjestelmän sijaan.
Voit aloittaa Cronin käytön Linuxissa noudattamalla seuraavia ohjeita:
1. Avaa terminaali ja kirjoita komento crontab -e
. Tämä avaa nykyisen käyttäjän crontab-tiedoston.
2. Lisää tehtävä crontab-tiedostoon edellä kuvatun kenttämuodon mukaisesti. Jos esimerkiksi haluat ajaa every_hour.sh-skriptin
joka tunti, lisää rivi 0 * * * * * * * * * /path/to/every_hour.sh
.
3. Tallenna muutokset ja sulje tiedosto.
4. Tarkista, että tehtävä on lisätty crontabiin komennolla crontab -l
. Se näyttää luettelon kaikista crontabiin
lisätyistä tehtävistä.
5. Tarkista, että tehtävä suoritetaan aikataulun mukaisesti komennolla tail -f /var/log/syslog
. Näet tehtävän suorittamiseen liittyvät tulosteet.
6. Jos haluat poistaa tehtävän crontabista
, käytä komentoa crontab -r
.
On joitakin tärkeitä seikkoja, jotka on syytä pitää mielessä:
crontabiin
sekä skriptejä että komentoja. Mutta jos haluat suorittaa skriptin, varmista, että sillä on execute-oikeudet(chmod +x /path/to/script.sh
).crontab-tiedosto
pääkäyttäjän crontab-komennolla
sudo crontab -e
.Huomaa, että crontab-tiedostossa
määritetty kellonaika vastaa Cronia käyttävän palvelimen kellonaikaa. Jos käytät etäpalvelinta, varmista, että palvelimen aika on määritetty oikein.