Mis on crontab?
Cron on nime saanud kreeka sõna "Chronos" järgi, mida kasutatakse aega. See on süsteemiprotsess, mis täidab automaatselt ülesandeid vastavalt konkreetsele ajakavale. See on käskude kogum, mida kasutatakse regulaarsete ajastamisülesannete täitmiseks. Crontab tähistab "cron table". See võimaldab tööülesannete täitmiseks kasutada tööajakava, mis on tuntud kui cron.
Crontab on ka programmi nimi, mida kasutatakse selle ajakava muutmiseks. Seda juhib crontab-fail, konfiguratsioonifail, mis näitab shellikäske, mida konkreetse ajakava jaoks perioodiliselt käivitada.
Selles opsüsteemi õpetuses saate teada:
- Mis on crontab?
- Miks kasutada CRONJOB?
- Kuidas kasutada cronit Linuxis?
- Linuxi Crontabi formaat
- Kuidas Crontabi lisada / muuta
- Kuidas loetleda Crontab
- Olulised Crontabi näited
Miks kasutada Cronjobs?
Siin on Cronjobsi kasutamise põhjused Linuxis:
- Aitab operatsioonisüsteemil logifailidest või andmebaasist ajastatud varukoopia teha.
- Kustutage vanad logifailid
- Arhiivige ja puhastage andmebaasi tabeleid
- Saatke välja kõik teatise e-kirjad, näiteks infolehed, parooli aegumise meil
- Puhverdatud andmete korrapärane puhastamine
- Crontab on ideaalne võimalus Unixi tööde automatiseerimiseks.
- Seda kasutatakse süsteemi hoolduse automatiseerimiseks
Kuidas kasutada cronit Linuxis?
Linuxi süsteemipaketil on kasulik ülesannete ajastaja nimega crontab. Crontab on populaarne, kuna selle saab ajastada automatiseeritud protsessi juurutamiseks. Seetõttu muudab automaatse protsessi juurvarana töötamine süsteemi muutmise lihtsamaks. Peate lihtsalt ülesannet muutma ja siis ootama, kuni ülesanne uuesti algatatakse.
Linuxi Crontabi formaat
Linuxi Crontabil on kuus välja. Esimesed viis välja määravad täitmise aja ja kuupäeva ning käsu täitmiseks kasutatakse 6. välja.
Crontabi süntaks:
[Minute] [hour][Day_of_the_Month][Month_of_the_Year][Day_of_the_Week][command]
- Astrika (*): kasutage sobitamiseks
- Määratle vahemik: võimaldab sidekriipsu abil määratleda vahemiku nagu 1-10 või 30-40 või jaanuar-märts, esmaspäev.
- Määra mitu vahemikku: võimaldab määratleda erinevaid vahemikke käsuga eraldatult, näiteks apr-jun, okt-dec.
Kuidas Crontabi lisada / muuta
Kasutaja saab oma crontab-töid redigeerida järgmise crontab-käsu abil:
$ crontab -u -e
Ülaltoodud käsk avab teie arvutisüsteemi isikliku crontabi konfiguratsiooni, mida saab muuta vaiketekstiredaktori abil.
Crontabi pole vaja taaskäivitada, kuna see võtab teie muudatused automaatselt üles, kui kasutate järgmist käsku.
$ crontab -l
Crontab-ülesannete eemaldamiseks kasutage järgmist käsku.
$ crontab -r
Töö lisamiseks või värskendamiseks crontab'is kasutage allpool antud käsku.
crontab -e
Käsk teise kasutaja kronteerija redigeerimiseks
crontab -u username -e
Kuidas loetleda Crontab
Käsk praeguse kasutaja crontab-kirjete vaatamiseks
crontab -l
Konkreetse kasutaja crontab-kirjete kuvamise käsk:
crontab -u username -l
Olulised Crontabi näited
Siin on mõned olulised näited Crontabist
Kirjeldus | Käsk |
Croni käsk erinevate ajastustööde tegemiseks. Allpool antud käsku täidetakse iga päev kell 7.00 ja 17.00. |
0 7,17 * * * /scripts/script.sh |
Käsk täita kron iga 5 minuti järel. |
*/5* * * * * /scripts/script.sh |
Croni ajakava käsk aitab teil ülesannet täita igal esmaspäeval kell 5.00. See käsk on kasulik iganädalaste ülesannete täitmiseks, näiteks süsteemi puhastamiseks. |
0 5 * * mon /scripts/script.sh |
Käsk käivitage skript 3-minutilise intervalliga. |
*/3 * * * * /scripts/monitor.sh |
Käsk ajakava määramiseks, milleks konkreetne kuu käivitatakse. See käsk ülesannete käivitamiseks töötab veebruaris, juunis ja septembris. Mõnikord peame valitud igakuise ülesande täitmiseks ajastama ülesande. |
* * * feb,jun,sep * /script/script.sh |
Käsk täidetud valitud päevadel. Seda näidet esitatakse igal esmaspäeval ja kolmapäeval kell 17.00. |
0 17 * * mon,wed /script/script.sh |
See käsk lubab cronil täita iga kuu esimesel laupäeval. |
0 2 * * sat [ $(date +%d) -le 06 ] && /script/script.sh |
Käsk skripti käivitamiseks 6-tunnise intervalliga, et seda saaks konfigureerida nagu allpool. |
0 */6 * * * /scripts/script.sh |
See käsk ajastab ülesande täitmise kaks korda esmaspäeval ja teisipäeval. Selleks kasutage järgmisi seadeid. |
0 4,17 * * mon,tue /scripts/script.sh |
Käsk ajakohastage cron iga 15 sekundi järel. |
* * * * * /scripts/script.sh* * * * * sleep 15; /scripts/script.sh |
Käsk ajastada ülesandeid igal aastal. @aastane ajatempel on = väärtusele "0 0 5 1 *". See täidab ülesande iga aasta viiendal minutil. Selle abil saate saata uue aasta tervitusi. |
@yearly /scripts/script.sh |
Igakuiselt täidetavad käsklused. @ kuu ajatempel on sarnane väärtusega "0 0 1 * *". See käsuväljend võimaldab ülesannet täita kuu esimesel minutil. |
@monthly /scripts/script.sh |
Käsk mitme ülesande täitmiseks ühe krooni abil. |
* * * * * /scripts/script.sh; /scripts/scrit2.sh |
Käsk ajastada ülesandeid täitmiseks nädalas. @nädalane ajatempel on sarnane väärtusega "0 0 4 * päike". Seda kasutatakse iganädalaste ülesannete täitmiseks, näiteks süsteemi puhastamine jne. |
@weekly /bin/script.sh |
Ülesanne plaanitakse täita iga päev. @daily ajatempel on sarnane väärtusega "0 2 * * *". See täidab ülesande iga päeva teisel minutil. |
@daily /scripts/script.sh |
Võimaldab ülesandeid täita tunnis. @tunni ajatempel sarnaneb väärtusega "0 * * * *". See käsk täidab ülesande iga tunni esimesel minutil. |
@hourly /scripts/script.sh |
Võimaldab ülesandeid süsteemi taaskäivitamisel käivitada. @reboot avaldis on kasulik nende ülesannete jaoks, mida süsteem soovib teie süsteemi käivitamisel käivitada. See on kasulik ülesannete tausta automaatseks alustamiseks. |
@reboot /scripts/script.sh |
Kokkuvõte:
- Cron on nime saanud kreeka sõna "Chronos" järgi, mida kasutatakse aega.
- Cronjobs aitab OS-il logifailidest või andmebaasist ajastatud varukoopiat teha.
- Linuxi süsteemipaketil on kasulik ülesannete planeerija nimega crontab, mille saab ajastada automatiseeritud protsessi käivitamiseks juurkasutajana.
- Linuxi Crontabil on kuus välja. Esimesed viis välja määravad täitmise aja ja kuupäeva ning käsu täitmiseks kasutatakse 6. välja.