Hvad er crontab?
Cron er opkaldt efter det græske ord "Chronos", der bruges i tid. Det er en systemproces, der automatisk udfører opgaver i henhold til den specifikke tidsplan. Det er et sæt kommandoer, der bruges til at køre regelmæssige planlægningsopgaver. Crontab står for "cron table". Det gør det muligt at bruge jobplanlægning, som er kendt som cron til at udføre opgaver.
Crontab er også navnet på programmet, som bruges til at redigere denne tidsplan. Det drives af en crontab-fil, en konfigurationsfil, der angiver shell-kommandoer, der skal køre med jævne mellemrum for den specifikke tidsplan.
I denne operativsystemvejledning lærer du:
- Hvad er crontab?
- Hvorfor bruge CRONJOB?
- Hvordan bruges cron i Linux?
- Linux Crontab-format
- Sådan tilføjes / ændres Crontab
- Sådan vises Crontab
- Vigtige Crontab-eksempler
Hvorfor bruge Cronjobs?
Her er grundene til at bruge Cronjobs i Linux:
- Hjælper OS med at tage en planlagt sikkerhedskopi af logfiler eller database.
- Slet gamle logfiler
- Arkiver og rens databasetabeller
- Send enhver meddelelses-e-mail, såsom nyhedsbreve, e-mail med udløb af adgangskode
- Regelmæssig oprydning af cachelagrede data
- Crontab er en ideel mulighed for at automatisere Unix-job.
- Det bruges til at automatisere systemvedligeholdelse
Hvordan bruges cron i Linux?
Linux-systempakke har en nyttig opgaveplanlægger med navnet crontab. Crontab er populært, fordi det kan planlægges at køre en automatiseret proces som root. Derfor har systemændringer lettere at have en automatiseret proces, der kører som root. Du skal bare ændre opgaven og derefter vente, indtil opgaven genstartes.
Linux Crontab-format
Crontab of Linux har seks felter. De første fem felter definerer tid og dato for udførelse, og det 6. felt bruges til kommandokørsel.
Crontab-syntaks:
[Minute] [hour][Day_of_the_Month][Month_of_the_Year][Day_of_the_Week][command]
- Astrics (*): Brug til matchning
- Definer rækkevidde: Giver dig mulighed for at definere et interval ved hjælp af bindestreg som 1-10 eller 30-40 eller jan-mar, mand-ons.
- Definer flere områder: Giver dig mulighed for at definere forskellige områder med kommando adskilt som apr-jun, okt-dec.
Sådan tilføjes / ændres Crontab
Brugeren kan redigere deres crontab-job ved hjælp af følgende crontab-kommando:
$ crontab -u -e
Ovenstående kommando åbner den personlige crontab-konfiguration af dit computersystem, som kan redigeres ved hjælp af din standard teksteditor.
Der er ikke behov for at genstarte din crontab, da den automatisk henter dine ændringer, når du bruger følgende kommando.
$ crontab -l
Brug følgende kommando for at fjerne dine crontab-opgaver.
$ crontab -r
Brug nedenstående kommando til at tilføje eller opdatere job i crontab.
crontab -e
Kommando til at redigere anden brugers crontab
crontab -u username -e
Sådan vises Crontab
Kommando til at se crontab-poster for den aktuelle bruger
crontab -l
Kommando til at se crontab-poster for en bestemt bruger:
crontab -u username -l
Vigtige Crontab-eksempler
Her er nogle vigtige eksempler på Crontab
Beskrivelse | Kommando |
Cron kommando til at udføre de forskellige planlægningsjob. Nedenfor angivet kommando udføres kl. 7 og 17 hver dag. |
0 7,17 * * * /scripts/script.sh |
Kommando til at udføre en cron efter hvert 5. minut. |
*/5* * * * * /scripts/script.sh |
Cron scheduler-kommando hjælper dig med at udføre opgaven hver mandag kl. Denne kommando er nyttig til at udføre ugentlige opgaver som systemoprydning. |
0 5 * * mon /scripts/script.sh |
Kommando kør dit script med 3 minutters interval. |
*/3 * * * * /scripts/monitor.sh |
Kommando til at planlægge en cron, som udføres i en bestemt måned. Denne kommando til at køre opgaver kører i februar, juni og september måneder. Nogle gange er vi nødt til at planlægge en opgave til at udføre en valgt månedlig opgave. |
* * * feb,jun,sep * /script/script.sh |
Kommando til at udføre på udvalgte dage. Dette eksempel kører hver mandag og onsdag kl. 17.00. |
0 17 * * mon,wed /script/script.sh |
Denne kommando giver cron mulighed for at udføre den første lørdag i hver måned. |
0 2 * * sat [ $(date +%d) -le 06 ] && /script/script.sh |
Kommando til at køre et script i 6 timers interval, så det kan konfigureres som nedenfor. |
0 */6 * * * /scripts/script.sh |
Denne kommando planlægger en opgave, der skal udføres to gange mandag og tirsdag. Brug følgende indstillinger til at gøre det. |
0 4,17 * * mon,tue /scripts/script.sh |
Kommando planlægger en cron, der skal udføres efter hvert 15. sekund. |
* * * * * /scripts/script.sh* * * * * sleep 15; /scripts/script.sh |
Kommando til at planlægge opgaver årligt. @årligt tidsstempel er = til "0 0 5 1 *". Dette udfører opgaven i det femte minut hvert år. Du kan bruge den til at sende hilsener til nytår. |
@yearly /scripts/script.sh |
Kommandoopgaver, der skal udføres månedligt. @monthly tidsstempel svarer til "0 0 1 * *". Dette kommandoudtryk tillader udførelse af en opgave i månedens første minut. |
@monthly /scripts/script.sh |
Kommando til at udføre flere opgaver ved hjælp af en enkelt cron. |
* * * * * /scripts/script.sh; /scripts/scrit2.sh |
Kommando til at planlægge opgaver, der skal udføres ugentligt. @ ugentligt tidsstempel svarer til "0 0 4 * sol". Dette bruges til at udføre de ugentlige opgaver som systemoprydning osv. |
@weekly /bin/script.sh |
Opgaven planlægges at udføres dagligt. @dages tidsstempel svarer til "0 2 * * *". Det udfører opgaven i det andet minut hver dag. |
@daily /scripts/script.sh |
Tillader, at opgaver udføres hver time. @hourly tidsstempel svarer til "0 * * * *". Denne kommando udfører en opgave i det første minut af hver time. |
@hourly /scripts/script.sh |
Tillader opgaver at udføre ved genstart af systemet. @reboot-udtryk er nyttigt til de opgaver, som systemet ønsker at køre ved start af dit system. Dette er nyttigt at starte opgaver baggrund automatisk. |
@reboot /scripts/script.sh |
Resumé:
- Cron er opkaldt efter det græske ord "Chronos", der bruges i tid.
- Cronjobs hjælper OS med at tage en planlagt sikkerhedskopi af logfiler eller database.
- Linux-systempakke har en nyttig opgaveplanlægger med navnet crontab, der kan planlægges til at køre en automatiseret proces som root.
- Crontab of Linux har seks felter. De første fem felter definerer tid og dato for udførelse, og det 6. felt bruges til kommandokørsel.