Dette er den andre artikkel fra en serie der vi bruker listen over det den katolske kirke kaller "dødssynder" som en unnskyldning for åFinn ut mer om kommandoer og programmer i Linux-verdenen. I dette tilfellet fortsetter vi å snakke om bruken av cron som vil være veldig nyttig for de som dyrker latskap.
Gitt at vi lever i en tid med mennesker som er lette å fornærme, la meg presisere, før jeg går inn i saken, at det ikke er min intensjon å gjøre narr av noens religiøse tro. I alle fall er det en selvhån. Jeg brukte en stor del av XNUMX-tallet på å studere katekisme, slik at etter å ha tatt min første nattverd, satte jeg aldri min fot i en kirke igjen med mindre en familiebegivenhet krevde det. Jeg må få tilbake den tiden på en eller annen måte.
Hva er cron og crontab for?
Vi hadde sagt at cron er en demon, altså et program som kjører i bakgrunnen uten brukerintervensjon. På jakt etter tilleggsinformasjon for denne artikkelen oppdaget jeg at å oversette daemon (måten Unix-systemer og derivater kaller denne typen program) som demon er en utbredt feilmen jeg skal ikke korrigere det. Vi snakker om synder, det må være minst én demon.
Funksjonen til cron er å utføre, på et tidligere spesifisert tidspunkt, en bestemt oppgave. Mesteparten av tiden er det på grunn av systembehov, selv om brukere kan indikere andre ved å redigere en tekstfil kjent som crontab.
I forrige innlegg hadde vi sagt at kommandoene for å lage crontab er:
crontab –e
for standardbrukeren
O
crontab –u nombre_de_usuario
for noen av de andre.
Crontab er en tekstfil som gir Cron instruksjoner om hva du skal gjøre og når du skal gjøre det.
Om bruk av cron via crontab
For å lage vår crontab må vi ta hensyn til følgende:
- En linje brukes for hver oppgave.
- Dato og tidspunkt for utførelse av oppgaven skal angis. I tilfelle det er en oppgave som krever periodisitet. For eksempel, hver onsdag kl. 5, erstattes resten av parametrene med asterisker (*).
- Hvis du vil tilordne mer enn én verdi for en gitt parameter, må hver verdi skilles med komma.
- Parametre er atskilt med et mellomrom.
- Katalogen der kommandostarteren er, må være kjent
Hvis vi for eksempel vil at datamaskinen til barna våre skal slå seg av hver dag klokken 20, vil instruksjonen være
0 20 * * * /sbin/shutdown
I tilfelle vi ønsker at avstengningen kun skal være på søndager, endrer vi instruksen til
0 20 * * 0 /sbin/shutdown
Det er noen snarveier som sparer oss fra å måtte skrive inn alle parameterne. De er:
- @hver time: Utfør en kommando klokken klokken.
- @daglig: Kjør kommandoen på begynnelsen av hver dag.
- @ukentlig: Kjør kommandoen på begynnelsen av den første dagen i uken.
- @månedlig: Kjør kommandoen på begynnelsen av den første dagen i hver måned.
- @årlig: Utfør kommandoen i årets første minutt.
Noen eksempler på bruk av denne kommandoen er:
@daily /bin/sh /ruta_al_script/nombre_del_script.sh
kjøre et Bash-skript.
@hourly /bin/python3 /ruta_al_script/nombre_del_script.py
kjøre et python-skript hver time.
I alle tilfeller skript må ha utføringstillatelser.
I eksemplene vi så, er ikke bare kommandoen angitt, men også banen der den kjørbare filen er plassert. Vi skal jobbe med disse katalogene:
- /bin: Den inneholder alle applikasjonene som er nødvendige for driften av systemet.
- /sbin: Her er applikasjonene som rotbrukeren trenger for å administrere systemet.
- / Hjem: Hvor applikasjonene til hver bruker er lagret.
- /usr: Applikasjoner og filer installert av brukere lagres her. De inkluderer filer med navnene og funksjonene nevnt i denne listen.
I den neste artikkelen vil vi se hvordan du kan forbedre crontab-skriving og noen andre automatiseringsverktøy tilgjengelig for Linux.