Cron on tõhus ja populaarne käsurea utiliit, mida kasutatakse paljude ülesannete ajastamiseks määratud ajal ilma kasutaja sekkumiseta. Ajastatud toiminguid nimetatakse croni töödeks, samal ajal kui crontab on croni töid sisaldava faili loend.
Selles artiklis selgitame erinevate näidenäidetega, kuidas saate Crontabi faili redigeerida ja kasutada Debian 10 süsteemis ülesannete ajastamiseks.
Cronit saab kasutada ülesannete automatiseerimiseks järgmistel juhtudel:
- Ajakava varukoopiate käitamine,
- Kettaruumi kontrollimine kindla intervalliga,
- Automaatne hooldus,
- Soovimatute failide perioodiline eemaldamine,
- Võrgu diagnostika käitamine
Süntaks
Croniga on lihtsam töötada, kui olete selle süntaksist aru saanud. Croni kasutamise üldine süntaks on:
* * * * / path / to / skript.shKõik väljad vastavad järgmistele:
Minut (0–59) Tund (0–24) Kuu kuu (1–7) Aasta kuu (1–12)Nädala_nädal (0–6) käsk
Croni installimine
Cron on eelinstallitud Debian 10-sse. Kui see aga teie süsteemist puudub, käivitage selle installimiseks järgmine käsk:
$ sudo apt install cronKuva crontab
Crontab-faili kuvamiseks kasutage järgmist käsku:
$ crontab -lKonkreetse kasutaja crontab-faili vaatamiseks kasutage järgmist käsku:
$ sudo crontab -u kasutaja -lRedigeeri crontabi
Praeguse kasutaja crontab-faili muutmiseks toimige järgmiselt
$ crontab -eKonkreetse kasutaja crontab-faili muutmiseks toimige järgmiselt
$ sudo crontab -u kasutajaKui muudate crontab-faili esimest korda, palutakse teil valida redaktor:
Kui olete redaktori valinud, kuvatakse järgmine aken.
Näiteks soovite käivitada varukripti nimega „varukoopia.sh ”, mis asub dokumentide kataloogis iga päev kell 2:00. Selleks peate oma crontab-faili lisama järgmise rea:
0 2 * * * / Dokumendid / varundamine.sh
Ülaltoodud aknas saate oma croni tööd ükshaaval lisada. Kui see on tehtud, salvestage ja sulgege fail pärast seda, kui kõik croni tööd käivitatakse automaatselt nende määratud intervalliga.
Eemaldage crontab
Crontab-faili eemaldamiseks sisestage terminali järgmine käsk:
$ crontab -rNüüd saate läbi rea näiteid Linuxi masina cron-töödest.
1. Juhtige cron-tööd iga minut
Croni töö iga minut täitmiseks lisage oma crontabi faili järgmine rida:
* * * * * / path / to / skript.sh2. Käivitage croni töö iga 10 minuti järel
Croni töö ajastamiseks iga 10 minuti järel täitmiseks lisage oma crontabi faili järgmine rida.
* / 10 * * * * / path / to / skript.sh3. Juhtige croni tööd kindlatel kuudel
Croni töö kavandamine konkreetsetel kuudel e.g. Märtsis, augustis, detsembris lisage cron-fail oma crontab-faili järgmisel viisil:
* * * jaanuar, mai, aug * / path / to / script.sh4. Käivitage valitud päevadel croni töö
Kui soovite, et teie cron-töö täidetaks valitud päevadel, oletame pühapäeval ja reedel kell 17.00, peaks see välja nägema järgmine.
0 17 * * päike, pe / tee / sihtkohta / skript.sh5. Juhtige croni tööd iga päev kindlal kellaajal
Croni töö ajastamiseks iga päev kindlal kellaajal, ütleme näiteks, et kell 3 hommikul lisage see rida crontabi faili.
0 3 * * * / path / to / script.sh6. Juhtige croni tööd kindlal päeval
Croni töö ajastamiseks teatud päeval täitmiseks, ütleme näiteks, et igal pühapäeval lisage see rida oma crontabi faili.
0 0 * * SUN / path / to / script.shTöö kestab igal pühapäeval kell 00:00.
7. Käivitage mitu ülesannet ühe croni tööga
Mitme ülesande ajastamiseks ühes croni töös lisage kõik crontab-faili skriptid, eraldades need semikooloniga.
* * * * * / path / to / skript1.sh; / path / to / script2.sh8. Juhtige croni tööd edasi iga argipäev
Croni töö ajastamiseks täitmiseks igal nädalapäeval, mis on esmaspäevast reedeni, peate selle rea lisama oma crontabi faili.
0 0 * * 1-5 / path / to / script.shTöö kestab igal tööpäeval kell 00:00.
9. Juhtige croni tööd kaks korda päevas
Töö kavandamiseks töötama kaks korda päevas e.g. kell 6 ja 15 peate lisama selle rea oma crontabi faili:
0 6,15 * * * / path / to / script.sh10. Juhtige croni tööd iga tund
Croni töö ajastamiseks käivitamiseks iga tunni tagant 0 minutiga peate lisama selle rea oma crontabi faili:
0 * * * * / tee / sihtkohta / skript.shNäiteks kui praegune kell on 14.00, töötab töö 15.00–16.00 ja nii edasi.
11. Käivitage croni töö iga 3 tunni järel
Croni töö ajastamiseks iga 3 tunni järel minutil 0 peate selle crontabi faili lisama:
0 * / 3 * * * / path / to / skript.shNäiteks kui praegune kell on 14.00, töötab töö 17.00, 20.00 ja nii edasi.
12. Juhtige croni tööd iga kuu esimesel kell 16.00
Töö ajastamiseks iga kuu esimese päeva kell 16.00 käivitamiseks peate lisama selle rea oma crontab-faili:
0 16 1 * * / path / to / script.shKeelpillid Crontabis
Pikkade korduvate käskude asemel võite kasutada ka järgmisi stringe.
@ tunnis - käivitage croni töö iga tund i.e. „0 * * * *“@ südaöö - juhtige croni tööd iga päev i.e. „0 0 * * *“
@ iga päev- sama mis südaöö
@ kord nädalas - käivitage croni töö igal nädalal, st.e. „0 0 * * 0“
@ igakuine - käivitage croni töö igal kuul, i.e. "0 0 1 * *"
@ aastas - juhtige croni tööd igal aastal, i.e. "0 0 1 1 *"
@ igal aastal - sama mis @ igal aastal
@ reboot - käivitage cron-töö igal käivitamisel
Näiteks croni töö käivitamiseks iga päev esimesel minutil ja esimesel tunnil lisage järgmine rida:
@daily / path / to / script.shNäiteks croni töö käivitamiseks iga kord, kui server taaskäivitatakse:
@reboot / path / to / script.shSee on kõik, mis seal on! Selles artiklis oleme õppinud, kuidas Debiani süsteemis crontabi abil erinevaid ülesandeid automatiseerida. Ülaltoodud näidete abil saate ajastada mis tahes töö algatamiseks ilma kasutaja sekkumiseta.