Betalingsmåter Abuse

Cron i Linux: hva er det?

26.02.2023, 13:13

Cron er et verktøy for planlegging av oppgaver i Linux-operativsystemet. Det lar deg kjøre skript eller kommandoer automatisk på bestemte tidspunkter, intervaller eller hendelser.

Hvordan bruker man det?

For å bruke Cron må du opprette en crontab-fil som inneholder en liste over oppgaver og tidsintervaller for når de skal utføres. Hver oppgave i crontab er en streng som består av fem felt atskilt med mellomrom:

*     *     *     *     *  command_to_execute
-     -     -     -     -
|     |     |     |     |
|     |     |     |     +----- day of the week (0 - 6) (Sunday = 0 or 7)
|     |     |     +------- month (1 - 12)
|     |     +--------- day of the month (1 - 31)
|     +----------- hour (0 - 23)
+------------- minutes (0 - 59)

Hvis for eksempel feltet minutes inneholder en *, vil oppgaven kjøres hvert minutt. Hvis du vil angi en bestemt verdi for et felt, for eksempel hver dag kl. 03.00, skal du skrive 0 3 * * * * * *.

Du kan opprette eller endre en crontab-fil ved å bruke kommandoen crontab -e. Hver bruker kan ha sin egen crontab-fil, i tillegg til systemfilen /etc/crontab, som inneholder oppgaver som kjøres som rotbruker.

Det finnes en cronjob-kommando som lar deg kjøre oppgaver inne i Docker-containere. Den fungerer på samme måte som crontab, men oppgavene kan kjøres inne i containeren i stedet for i vertssystemet.

Bruke Cron: en trinnvis algoritme

Følg disse trinnene for å begynne å bruke Cron i Linux:

1. Åpne en terminal og skriv inn kommandoen crontab -e. Dette åpner crontab-filen for den aktuelle brukeren.

2. Legg til en oppgave i crontab-filen i henhold til feltformatet som er beskrevet ovenfor. Hvis du for eksempel vil kjøre skriptet every_hour.sh hver time, legger du til linjen 0 * * * * * * * * /path/to/every_hour.sh.

3. Lagre endringene, og lukk filen.

4. Kontroller at oppgaven er lagt til i crontab ved hjelp av kommandoen crontab -l. Den viser en liste over alle oppgaver som er lagt til i crontab.

5. Kontroller at oppgaven kjører som planlagt ved hjelp av kommandoen tail -f /var/log/syslog. Du vil se utdataene knyttet til oppgaveutførelsen.

6. Hvis du vil fjerne en oppgave fra crontab, bruker du kommandoen crontab -r.

Det er noen viktige punkter du må huske på:

  • Du kan legge til både skript og kommandoer i crontab. Men hvis du vil kjøre et skript, må du sørge for at det har kjøretillatelser(chmod +x /path/to/script.sh).
  • Hvis du vil at oppgaven skal kjøres med root-brukerrettigheter, bruker du kommandoen sudo crontab -e for å åpne crontab-filen for root-brukeren.
  • sørg for at kommandoene og skriptene du kjører, ligger på riktig sted og har riktige lese- og kjøretillatelser.

Vær oppmerksom på at klokkeslettet som er angitt i crontab, skal samsvare med klokkeslettet på serveren som kjører Cron. Hvis du bruker en ekstern server, må du sørge for at klokkeslettet på serveren er riktig konfigurert.