4 måter å sjekke om cron fungerer på Linux

cron er en jobbplanlegger for Linux og Unix-lignende operativsystemer. Den kommer forhåndsinstallert på alle Linux-distribusjoner og er best egnet for automatisering av repeterende oppgaver.

For at cron skal fungere ordentlig, må du med jevne mellomrom kontrollere at verktøyet kjører bra på systemet ditt. Du kan gjøre det på fire forskjellige måter, inkludert å sjekke cron-tjenestestatusen, undersøke cron-logger, kjøre en test-cron-jobb og liste ned kjørende prosesser på systemet ditt.

Hva er cron?

Den stille jobbbehandleren, cron, automatiserer og planlegger systemoppgaver. Brukere som konfigurerer og vedlikeholder programvaremiljøer, bruker cron til å planlegge jobber som kommandoer eller shell-skript – også kalt cron-jobber – for å kjøre periodisk til faste tider eller intervaller.

cron automatiserer systemvedlikehold eller administrasjonsoppgaver som du kanskje må utføre ofte.

Det er flere implementeringer tilgjengelig på Linux. Versjonen du vil ha avhenger av distribusjonen din. «Vixie cron,» oppkalt etter den opprinnelige utvikleren, Paul Vixie, er vanlig og standard på Debian og Ubuntu. Arch har ingen versjon av cron til fordel for systemd timere.

cronie er en gaffel av Vixie cron som er tilgjengelig som en standard Arch-pakke. For å installere det, bruk pacman:

 sudo pacman -S cronie 

Start deretter og aktiver den med:

 sudo systemctl start cronie.service
sudo systemctl enable cronie.service

Du kan se hvilken versjon av cron som er installert på systemet ditt ved å slå opp manpage:

 man cron 

Hvordan sjekke om cron fungerer på Linux

Her er noen av måtene du kan sjekke om cron fungerer som den skal:

  Hvordan lese Hacker News på Linux-skrivebordet

1. Sjekk cron-tjenestestatusen på Linux

En måte å sjekke om cron fungerer er ved å sjekke statusen til cron-tjenesten ved å kjøre en grunnleggende Linux-kommando. Åpne Linux-terminalen ved å trykke Ctrl + Alt + T og bruk systemctl-kommandoen for å sjekke statusen til cron:

 sudo systemctl status cron 

Hvis du ser følgende utgang, betyr dette at cron er aktiv og kjører fint på systemet ditt.

Men hva hvis cron er i en inaktiv tilstand som vist nedenfor?

Du kan starte tjenesten slik:

 sudo systemctl start cron.service 

Etter å ha startet cron-tjenesten, aktiver den slik at den starter hver gang systemet starter på nytt:

 sudo systemctl enable cron.service 

2. Sjekk cron-logger på Linux

En annen måte å sjekke om cron fungerer som den skal, er ved å undersøke loggfilene. cron-logger lagres i /var/log/syslog-katalogen på Linux.

syslog er en protokoll som Linux-systemer bruker for å sentralisere hendelsesdatalogger. Logger blir deretter åpnet for å utføre revisjoner, overvåking, feilsøking, rapportering og andre nødvendige IT-driftsoppgaver.

Du kan se cron-jobbloggene i syslog-filen ved å utføre følgende kommando:

 grep 'cron' /var/log/syslog 

Du vil se en lignende utgang som indikerer at cron kjører bra og loggene lagres i loggfilen:

Siden syslog-mappen inneholder andre systemlogger sammen med cron-loggene, kan det være litt vanskelig å kun undersøke de cron-relaterte loggene i filen. Du kan løse dette ved å lage en egen loggfil som bare lagrer cron-oppføringer som vises i syslog-filen.

  Hvordan bruke Pale Moon-nettleseren på Linux

I dette eksemplet bruker vi nano-editoren, men du kan bruke hvilken som helst editor du føler deg komfortabel med.

Åpne følgende fil med nano:

 nano /etc/rsyslog.d/50-default.conf 

Finn linjen som starter med:

 #cron.* 

Fjern kommentaren til denne linjen ved å fjerne hash-tegnet (#). Lagre og avslutt filen ved å trykke Ctrl + X, trykk deretter Y og trykk Enter.

Start rsyslog-tjenesten på nytt ved å gi denne kommandoen:

 sudo service rsyslog restart 

Du vil nå motta logger i cron.log-filen som ligger i /var/log-katalogen.

Hvis terminalen din ikke klarer å hente noen logger, kan det bety at cron ikke kjører. Bekreft i så fall om cron fungerer eller ikke bruker andre metoder.

3. Kjøre en cron-jobb på Linux

Du kan også sjekke om cron fungerer ved ganske enkelt å lage en test cron-jobb og utføre den. Hvis jobben lykkes med å utføre oppgaven, betyr dette at den fungerer bra.

Du må først lage et Bash-skript. Bash-skripting lar deg automatisere dagligdagse oppgaver på Linux.

La oss lage et Bash-skript som vil skrive ut «cronjoben min fungerer!» inn i en TXT-fil. For å lage filen, finn først ut din nåværende arbeidskatalog ved å bruke denne kommandoen:

 pwd 

Opprett en fil i gjeldende katalog med berøringskommandoen:

 touch file.txt 

Etter dette, lag en Bash-fil ved hjelp av nano:

 nano script.sh 

Legg til følgende innhold i filen:

 #! /usr/bin/bash
echo "my cronjob is working!" >> /home/username/file.txt

Sørg for å oppgi riktig plassering av tekstfilen du opprettet. Lagre og avslutt filen ved å trykke Ctrl + X, deretter Y, og trykk Enter.

Gi utføringstillatelser til Bash-skriptet:

 chmod +x script.sh 

Lag nå en cron-jobb for å utføre skriptet. For å gjøre det, åpne crontab-filen med:

 crontab -e 

Skriv inn følgende linje på slutten av filen.

 * * * * * /path/to/script.sh 

De fem stjernene samsvarer med tidspunktet for utførelse, der den første stjernen representerer minuttene (0-59), den andre representerer timer (i 24-timers tid, så 13:00 er 13, midnatt starter kl 0), tredje stjerne betyr dagen (0-7, 0 og 7 er søndag), den fjerde angir måneden, og den siste stjernen angir året.

  Hvordan redigere Hosts-filen på Linux

Navnet på den kjørbare filen og dens bane er også nevnt i filen.

Etter å ha lagret og lukket filen, vil du se en «crontab: installerer ny crontab»-melding på terminalen.

For å sjekke om cron-jobben fungerte eller ikke, gå til katalogen til file.txt og skriv ut innholdet på terminalen ved hjelp av cat:

 cat file.txt 

Dette indikerer at cron fungerer bra.

4. Sjekk kjørende prosesser på Linux

En annen måte du kan sjekke om cron-demonen fungerer, er ved å liste ned de kjørende prosessene på systemet ditt. Du kan oppnå dette ved å bruke ps-kommandoen. Cron-demonen vil dukke opp i utdataene som crond.

 ps aux | grep cron 

Dette bekrefter at cron-prosessen kjører på Linux-systemet ditt.

Automatiser og planlegg systemoppgaver med cron

cron er et av de mest vitale verktøyene på Linux som lar systemet fungere effektivt. Noen ganger må du sjekke om cron fungerer mens du feilsøker systemproblemer.

Du kan oppnå dette ved enten å sjekke cron-logger eller se de kjørende prosessene på systemet ditt. Du kan også sjekke cron-statusen ved å bruke systemctl-verktøyet. Utenom det kan det å kjøre en test cron-jobb også fortelle deg om tjenesten kjører eller ikke.

Den jevne arbeidet til cron lar deg automatisere og planlegge daglige systemjobber. De fleste av cron-jobbene opprettes automatisk av installerte applikasjoner. Automatisering og planlegging av oppgaver forbedrer den generelle systemytelsen og holder den sunn.