Skip to main content

Cum să editați fișierul Linux Crontab pentru a programa locurile de muncă

CUM SA-TI INSTALEZI MODURI PE MINECRAFT (Foarte Usor) (Aprilie 2025)

CUM SA-TI INSTALEZI MODURI PE MINECRAFT (Foarte Usor) (Aprilie 2025)
Anonim

Un daemon numit Linux cron execută procese la intervale regulate. Verifică anumite foldere din sistem pentru ca scripturile să ruleze într-o serie de foldere inclusiv /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly și /etc/cron.monthly. Există, de asemenea, un fișier numit / etc / crontab.

Plasarea scripturilor în dosarele Cron

Puteți plasa pur și simplu script-uri în dosarele relevante pentru a le face să ruleze intervale regulate.

De exemplu, deschideți o fereastră terminal și executați următoarea comandă ls:

ls / etc / cron *

Veți vedea lista de programe sau scripturi care se execută orar, zilnic, săptămânal și lunar.

Problema cu aceste dosare este că acestea sunt puțin vagi. De exemplu, zilnic înseamnă că scriptul se va difuza o dată pe zi, dar nu aveți control asupra timpului în care scriptul va fi rulat în acea zi.

Aici intră fișierul crontab.

Prin editarea fișierului crontab puteți obține un script sau un program pentru a rula la data și ora exactă pe care doriți să le execute.

Permisiuni

Comanda crontab cere ca un utilizator să aibă permisiuni de editare a unui fișier crontab. Există în principiu două fișiere care sunt utilizate pentru a gestiona permisiunile crontab:

  • /etc/cron.allow
  • /etc/cron.deny

Dacă fișierul /etc/cron.allow există, atunci utilizatorul care dorește să editeze fișierul crontab trebuie să fie în acel fișier. Dacă fișierul cron.allow nu există, dar există un fișier /etc/cron.deny, atunci utilizatorul nu trebuie să existe în acel fișier. Dacă există ambele fișiere, atunci /etc/cron.allow suprascrie fișierul /etc/cron.deny. Dacă nu există niciun fișier, depinde de configurația sistemului dacă un utilizator poate edita crontabul.

Utilizatorul rădăcină poate modifica întotdeauna fișierul crontab. Puteți utiliza comanda su pentru a comuta la utilizatorul rădăcină sau la comanda sudo pentru a rula comanda crontab.

Editarea fișierului Crontab

Fiecare utilizator care are permisiuni adecvate își poate crea propriul fișier crontab. Comanda cron caută în mod normal toate fișierele crontab și trece prin fiecare dintre ele.

Pentru a verifica dacă aveți un fișier crontab executați următoarea comandă:

crontab -l

Dacă nu aveți un fișier crontab mesajul "no crontab for "va apărea, altfel fișierul dvs. crontab va fi afișat (această funcționalitate diferă de la sistem la sistem, uneori nu afișează nimic și alteori se afișează" nu modificați acest fișier ").

Pentru a crea sau edita un fișier crontab executați următoarea comandă:

crontab -e

Fișierul care se deschide are o mulțime de informații, dar partea cheie este exemplul chiar înainte de sfârșitul secțiunii de comentarii (comentariile sunt notate cu linii care încep cu #).

# m h dom mon dow comandă

0 5 * * 1 tar -zcf /var/backups/home.tgz / home /

Există 6 informații care se potrivesc fiecărei linii a fișierului crontab:

  • Momentul zilei în care trebuie să executați comanda (m)
  • Ora de zi a comenzii este de a rula (h)
  • Ziua lunii în care este pornit comanda (dom)
  • Luna în care trebuie să executați comanda (mon)
  • În ziua săptămânii, comanda este de a rula (dow)
  • Comanda

Pentru fiecare element (cu excepția comenzii) puteți specifica un caracter cu machetă. Uită-te la următorul exemplu crontab linie:

30 18 * * * tar -zcf /var/backups/home.tgz / home /

La 30 de minute, 18 ore și în orice zi, lună și zi din săptămână, această intrare crontab va zip și va întoarce directorul de domiciliu în dosarul / var / backups.

Pentru a obține o comandă care să ruleze la 30 de minute în fiecare oră, executați următoarea comandă:

30 * * * * comandă

Pentru a obține o comandă care să ruleze la fiecare minut după ora 18:00, executați următoarea comandă:

* 18 * * * comanda

Prin urmare, trebuie să fiți atenți la configurarea comenzilor dvs. crontab.

De exemplu:

* * * 1 * comandă

Această comandă va fi difuzată în fiecare minut al fiecărei ore din fiecare zi a fiecărei săptămâni din ianuarie.

Pentru a rula o comanda la ora 5 am pe 1 ianuarie, veti face la urmatoarea comanda fisierul crontab:

0 5 1 1 * comandă

Cum să eliminați un fișier Crontab

De cele mai multe ori nu veți dori să eliminați fișierul crontab, dar este posibil să doriți să eliminați câteva rânduri din fișierul crontab.

Cu toate acestea, dacă doriți să eliminați fișierul crontab al utilizatorului, executați următoarea comandă:

crontab -r

O modalitate mai sigură de a face acest lucru este să executați următoarea comandă:

crontab -i

Sistemul de operare solicită verificarea înainte de a elimina fișierul crontab.