Hva er crontab?
Cron er oppkalt etter det greske ordet "Chronos" som brukes over tid. Det er en systemprosess som automatisk utfører oppgaver i henhold til den spesifikke tidsplanen. Det er et sett med kommandoer som brukes til å kjøre vanlige planleggingsoppgaver. Crontab står for "cron table". Det gjør det mulig å bruke jobbplanlegger, som er kjent som cron for å utføre oppgaver.
Crontab er også navnet på programmet, som brukes til å redigere tidsplanen. Den drives av en crontab-fil, en konfigurasjonsfil som indikerer skallkommandoer for å kjøre med jevne mellomrom for den spesifikke tidsplanen.
I denne opplæringen om operativsystem vil du lære:
- Hva er crontab?
- Hvorfor bruke CRONJOB?
- Hvordan bruke cron i Linux?
- Linux Crontab-format
- Hvordan legge til / endre Crontab
- Hvordan liste Crontab
- Viktige Crontab-eksempler
Hvorfor bruke Cronjobs?
Her er årsakene til at du bruker Cronjobs i Linux:
- Hjelper OS med å ta en planlagt sikkerhetskopi av loggfiler eller database.
- Slett gamle loggfiler
- Arkiver og rens databasetabeller
- Send ut e-post med varsling som nyhetsbrev, passord utløps e-post
- Regelmessig opprydding av hurtigbufrede data
- Crontab er et ideelt alternativ for å automatisere Unix-jobber.
- Den brukes til å automatisere systemvedlikehold
Hvordan bruke cron i Linux?
Linux-systempakken har en nyttig oppgaveplanlegger med navnet crontab. Crontab er populært fordi det kan planlegges å kjøre en automatisert prosess som root. Derfor gjør systemendringer enklere å ha en automatisert prosess som kjører som root. Du trenger bare å endre oppgaven og deretter vente til oppgaven startes på nytt.
Linux Crontab-format
Crontab of Linux har seks felt. De første fem feltene definerer tid og dato for kjøring, og det sjette feltet brukes til kommandokjøring.
Crontab-syntaks:
[Minute] [hour][Day_of_the_Month][Month_of_the_Year][Day_of_the_Week][command]
- Astrics (*): Brukes til å matche
- Definer rekkevidde: Lar deg definere et område ved hjelp av bindestrek som 1-10 eller 30-40 eller jan-mar, man-ons.
- Definer flere områder: Lar deg definere forskjellige områder med kommando atskilt som apr-jun, okt-des.
Hvordan legge til / endre Crontab
Brukeren kan redigere crontab-jobbene sine ved hjelp av følgende crontab-kommando:
$ crontab -u -e
Ovennevnte kommando åpner den personlige crontab-konfigurasjonen til datasystemet ditt, som kan redigeres ved å bruke standard teksteditor.
Det er ikke nødvendig å starte crontab på nytt, da det vil hente endringene automatisk når du bruker følgende kommando.
$ crontab -l
For å fjerne crontab-oppgavene dine, bruk følgende kommando.
$ crontab -r
For å legge til eller oppdatere jobb i crontab, bruk kommandoen nedenfor.
crontab -e
Kommando for å redigere andre brukers crontab
crontab -u username -e
Hvordan liste Crontab
Kommando for å vise crontab-oppføringer for nåværende bruker
crontab -l
Kommando for å vise crontab-oppføringer for en bestemt bruker:
crontab -u username -l
Viktige Crontab-eksempler
Her er noen viktige eksempler på Crontab
Beskrivelse | Kommando |
Cron kommando for å utføre de forskjellige planleggingsjobbene. Nedenfor gitt kommando utføres klokka 07.00 og 17.00 daglig. |
0 7,17 * * * /scripts/script.sh |
Kommando om å utføre en cron etter hvert 5. minutt. |
*/5* * * * * /scripts/script.sh |
Cron scheduler-kommandoen hjelper deg med å utføre oppgaven hver mandag klokka 5 AM. Denne kommandoen er nyttig for å utføre ukentlige oppgaver som systemopprydding. |
0 5 * * mon /scripts/script.sh |
Kommando kjør skriptet ditt i 3 minutters intervall. |
*/3 * * * * /scripts/monitor.sh |
Kommando om å planlegge en cron som utføres for en bestemt måned. Denne kommandoen for å kjøre oppgaver kjøres i februar, juni og september måneder. Noen ganger må vi planlegge en oppgave for å utføre en valgt månedlig oppgave. |
* * * feb,jun,sep * /script/script.sh |
Kommando for å utføre på utvalgte dager. Dette eksemplet kjøres hver mandag og onsdag klokken 17.00. |
0 17 * * mon,wed /script/script.sh |
Denne kommandoen tillater cron å utføre første lørdag i hver måned. |
0 2 * * sat [ $(date +%d) -le 06 ] && /script/script.sh |
Kommando om å kjøre et skript i 6 timers intervall, slik at det kan konfigureres som nedenfor. |
0 */6 * * * /scripts/script.sh |
Denne kommandoen planlegger en oppgave som skal utføres to ganger på mandag og tirsdag. Bruk følgende innstillinger for å gjøre det. |
0 4,17 * * mon,tue /scripts/script.sh |
Kommando planlegger en cron å kjøre etter hvert 15. sekund. |
* * * * * /scripts/script.sh* * * * * sleep 15; /scripts/script.sh |
Kommando om å planlegge oppgaver på årsbasis. @årlig tidsstempel er = til "0 0 5 1 *". Dette utfører oppgaven i femte minutt hvert år. Du kan bruke den til å sende hilsener til nyttår. |
@yearly /scripts/script.sh |
Kommandooppgaver som skal utføres månedlig. @monthly tidsstempel ligner på "0 0 1 * *". Dette kommandouttrykket tillater utførelse av en oppgave i første minutt av måneden. |
@monthly /scripts/script.sh |
Kommando om å utføre flere oppgaver ved hjelp av en enkelt cron. |
* * * * * /scripts/script.sh; /scripts/scrit2.sh |
Kommando til å planlegge oppgaver som skal utføres ukentlig. @ ukentlig tidsstempel ligner på "0 0 4 * sol". Dette brukes til å utføre de ukentlige oppgavene som systemopprydding etc. |
@weekly /bin/script.sh |
Oppgaven vil være planlagt å utføres på daglig basis. @Daglig tidsstempel ligner på "0 2 * * *". Den utfører oppgaven i andre minutt av hver dag. |
@daily /scripts/script.sh |
Lar oppgaver utføres hver time. @hourly tidsstempel ligner på "0 * * * *". Denne kommandoen utfører en oppgave i første minutt av hver time. |
@hourly /scripts/script.sh |
Lar oppgaver utføres ved omstart av systemet. @reboot-uttrykk er nyttig for de oppgavene som systemet ønsker å kjøre ved oppstart av systemet. Dette er nyttig for å starte oppgavene automatisk. |
@reboot /scripts/script.sh |
Sammendrag:
- Cron er oppkalt etter det greske ordet "Chronos" som brukes over tid.
- Cronjobs hjelper OS med å ta en planlagt sikkerhetskopi av loggfiler eller database.
- Linux-systempakken har en nyttig oppgaveplanlegger med navnet crontab som kan planlegges å kjøre en automatisert prosess som root.
- Crontab of Linux har seks felt. De første fem feltene definerer tid og dato for kjøring, og det sjette feltet brukes til kommandokjøring.