Cron-työpaikkojen luominen ja hallinta Linuxissa
automatisoi varmuuskopiointitehtävät, hakemistojen puhdistus, ilmoitukset jne.
Cron-työt suoritetaan taustalla ja tarkistavat jatkuvasti /etc/crontab
-tiedoston ja /etc/cron.*/
ja /var/spool/cron/
hakemistoja. Cron-tiedostoja ei ole tarkoitus muokata suoraan, ja jokaisella käyttäjällä on ainutlaatuinen crontab.
Kuinka sinun pitäisi luoda ja muokata cron-työpaikkoja? Crontab-komennoilla. Crontab on menetelmä, jolla luot, muokkaat, asennat, poistat ja luetat cron-töitä.
Cron-töiden luomisen ja muokkaamisen komento on sama ja yksinkertainen. Ja mikä vielä hienompaa on, että sinun ei tarvitse käynnistää cronia uudelleen, kun olet luonut uusia tiedostoja tai muokannut olemassa olevia.
$ crontab -e
Cron-syntakse
Aivan kuten minkä tahansa kielen kohdalla, myös cronin kanssa työskenteleminen on paljon helpompaa, kun ymmärrät sen syntaksin ja sinun on tiedettävä 2 muotoa:
A B C D E USERNAME /path/to/command arg1 arg2 OR A B C D E USERNAME /root/backup.sh
Selitys yllä olevasta cron-syntaksista:
- A: Minuuttialue: 0-59
- B: Tunnit: 0-23
- C: Päivien vaihteluväli: 0-31
- D: Kuukausialue: 0-12
- E: Viikkopäivät vaihtelevat: 0 - 7. Maanantaista alkaen 0 tai 7 edustaa sunnuntaa
- USERNAME: korvaa tämä käyttäjänimelläsi
- /path/to/command - Aikataulun tai komennon nimi, jonka haluat ajoittaa
Ei siinä kaikki. Cron käyttää 3 operaattorisymbolia, joiden avulla voit määrittää useita arvoja kenttään:
- Tähti
(*)
: määrittää kentän kaikki mahdolliset arvot - Pilkku
(,)
: määrittää arvoluettelon - Viiva
(-)
: määrittää arvojen alueen - Erotin
(/)
: määrittää askelarvon
Nyt kun tiedät Cronin syntaksin ja operaattorit, katsotaanpa joitain esimerkkejä.
Cron-työn esimerkkejä
Cron-komentojen suorittamisen ensimmäinen vaihe on crontab-sovelluksen asentaminen komennolla:
# crontab -e
Suorita /root/backup.sh
joka päivä kello 3:
0 3 * * * /root/backup.sh
Suorita script.sh
jokaisen kuukauden toisena kello 16.30:
30 16 2 * * /path/to/script.sh
Suorita /scripts/phpscript.php
klo 22.00 viikon aikana:
0 22 * * 1-5 /scripts/phpscript.php
Suorita perlscript.pl
joka päivä kello 23.00 keskiyön jälkeen klo 2.00 ja 4.00:
23 0-23/2 * * * /path/to/perlscript.pl
Suorita Linux-komento joka sunnuntai klo 04.05:
5 4 * * sun /path/to/linuxcommand
Cron-asetukset
Luettelo cron-töistä.
# crontab -l OR # crontab -u username -l
Poista kaikki crontab-työt.
# crontab -r
Poista tietyn käyttäjän Cron-työ.
# crontab -r -u username
Jouset Crontabissa
Jouset ovat kehittäjien suosikkikohteita, koska ne auttavat säästämään aikaa poistamalla toistuvat kirjoitukset. Cronilla on tiettyjä merkkijonoja, joiden avulla voit luoda komentoja nopeammin:
-
@hourly
: Suorita kerran tunnissa eli "0 * * * *" -
@midnight
: Suorita kerran päivässä eli "0 0 * * *" -
@daily
: sama kuin keskiyö -
@weekly
: Suorita kerran viikossa, ts. "0 0 * * 0" -
@kuukausittain
: Suorita kerran kuukaudessa, ts. "0 0 1 * *" -
@ vuosittain
: Suorita kerran vuodessa eli "0 0 1 1 *" -
@yearly
: sama kuin @ vuosittain -
@reboot
: Suorita kerran jokaisessa käynnistyksessä
Esimerkiksi näin varmuuskopioidaan järjestelmäsi joka päivä:
@daily /path/to/backup/script.sh
Tässä vaiheessa sinulla on kaikki mitä tarvitset järjestelmän tehtävien luomiseen ja hallintaan Cronin avulla. Voit nyt aloittaa useiden ympäristöjen määrittämisen ja ylläpitämisen ajoitetuilla komennoilla.
Kuinka paljon Cron-käyttäjä olet? Ja onko mitään yksityiskohtia, joita voit lisätä artikkeliin? Keskusteluruutu on alla.
Kun ymmärrät tarpeeksi Crontabin toiminnasta, voit käyttää näitä hienoja Crontab-generaattorin apuohjelmia tuottamaan crontab-linjoja ilmaiseksi.
Voit myös lukea Ubuntun artikkelin Cronin käytöstä täältä. Siinä on resursseja, joista saatat löytää hyödyllisiä.