4 moduri de a verifica dacă cron funcționează pe Linux

cron este un planificator de joburi pentru sistemele de operare Linux și Unix. Vine preinstalat pe toate distribuțiile Linux și este cel mai potrivit pentru automatizarea sarcinilor repetitive.

Pentru ca cron să funcționeze corect, trebuie să verificați periodic dacă utilitarul funcționează bine pe sistemul dumneavoastră. Puteți face asta folosind patru moduri diferite, inclusiv verificarea stării serviciului cron, examinarea jurnalelor cron, rularea unui job cron de testare și listarea proceselor care rulează pe sistemul dumneavoastră.

Ce este cron?

Managerul silențios de joburi, cron, automatizează și programează sarcinile sistemului. Utilizatorii care configurează și întrețin mediile software folosesc cron pentru a programa joburi, cum ar fi comenzi sau scripturi shell – numite și joburi cron – pentru a rula periodic la ore sau intervale fixe.

cron automatizează sarcinile de întreținere sau administrare a sistemului pe care ar putea fi necesar să le efectuați frecvent.

Există mai multe implementări disponibile pe Linux. Versiunea pe care o veți avea depinde de distribuția dvs. „Vixie cron”, numit după dezvoltatorul său original, Paul Vixie, este obișnuit și implicit pe Debian și Ubuntu. Arch nu are nicio versiune de cron în favoarea cronometrelor systemd.

cronie este o furcă a Vixie cron care este disponibil ca pachet standard Arch. Pentru a-l instala, utilizați pacman:

 sudo pacman -S cronie 

Apoi porniți și activați-l cu:

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

Puteți vedea ce versiune de cron este instalată pe sistemul dvs. căutând pagina sa de manual:

 man cron 

Cum să verificați dacă cron funcționează pe Linux

Iată câteva dintre modalitățile prin care puteți verifica dacă cron funcționează corect:

  Cum să redenumești un fișier în Linux

1. Verificați starea serviciului cron pe Linux

O modalitate de a verifica dacă cron funcționează este prin verificarea stării serviciului cron prin rularea unei comenzi de bază Linux. Deschideți terminalul Linux apăsând Ctrl + Alt + T și utilizați comanda systemctl pentru a verifica starea cron:

 sudo systemctl status cron 

Dacă vedeți următoarea ieșire, aceasta înseamnă că cron este activ și funcționează bine pe sistemul dvs.

Dar ce se întâmplă dacă cron este într-o stare inactivă, așa cum se arată mai jos?

Puteți începe serviciul astfel:

 sudo systemctl start cron.service 

După pornirea serviciului cron, activați-l astfel încât să pornească de fiecare dată când sistemul repornește:

 sudo systemctl enable cron.service 

2. Verificați cron Logs pe Linux

O altă modalitate de a verifica dacă cron funcționează corect este prin examinarea fișierelor jurnal. Jurnalele cron sunt stocate în directorul /var/log/syslog pe Linux.

syslog este un protocol pe care sistemele Linux îl folosesc pentru a centraliza jurnalele de date despre evenimente. Jurnalele sunt apoi accesate pentru a efectua audituri, monitorizare, depanare, raportare și alte sarcini operaționale IT necesare.

Puteți vedea jurnalele de job cron în fișierul syslog executând următoarea comandă:

 grep 'cron' /var/log/syslog 

Veți vedea o ieșire similară care indică faptul că cron funcționează bine și jurnalele sale sunt stocate în fișierul jurnal:

Deoarece folderul syslog conține și alte jurnalele de sistem împreună cu jurnalele cron, poate fi puțin dificil să examinezi doar jurnalele legate de cron din fișier. Puteți rezolva acest lucru prin crearea unui fișier jurnal separat care stochează doar intrările cron care apar în fișierul syslog.

În acest exemplu, vom folosi editorul nano, dar puteți folosi orice editor cu care vă simțiți confortabil.

  Cele mai bune 5 instrumente de editare a etichetelor MP3 pentru Linux

Deschideți următorul fișier folosind nano:

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

Găsiți linia care începe cu:

 #cron.* 

Decomentați această linie eliminând semnul hash (#). Apoi, salvați și părăsiți fișierul apăsând Ctrl + X, apoi apăsați Y și apăsați Enter.

Reporniți serviciul rsyslog lansând această comandă:

 sudo service rsyslog restart 

Veți primi acum jurnalele în fișierul cron.log aflat în directorul /var/log.

Dacă terminalul nu reușește să preia niciun jurnal, asta ar putea însemna că cron nu rulează. În acest caz, confirmați dacă cron funcționează sau nu folosește alte metode.

3. Rularea unui job cron pe Linux

De asemenea, puteți verifica dacă cron funcționează pur și simplu creând un job cron de testare și executându-l. Dacă jobul reușește să îndeplinească sarcina, aceasta înseamnă că funcționează bine.

Mai întâi trebuie să creați un script Bash. Bash scripting vă permite să automatizați sarcinile de zi cu zi pe Linux.

Să creăm un script Bash care va tipări „cronjob-ul meu funcționează!” într-un fișier TXT. Pentru a crea fișierul, mai întâi, aflați directorul de lucru actual folosind această comandă:

 pwd 

Creați un fișier în directorul curent folosind comanda tactilă:

 touch file.txt 

După aceasta, creați un fișier Bash folosind nano:

 nano script.sh 

Adăugați următorul conținut la fișier:

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

Asigurați-vă că furnizați locația corectă a fișierului text pe care l-ați creat. Salvați și ieșiți din fișier apăsând Ctrl + X, apoi Y și apăsați Enter.

Acordați permisiuni de execuție scriptului Bash:

 chmod +x script.sh 

Acum creați un job cron pentru a executa scriptul. Pentru a face asta, deschideți fișierul crontab cu:

 crontab -e 

Introduceți următorul rând la sfârșitul fișierului.

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

Cele cinci asteriscuri se potrivesc cu ora de execuție, în care primul asterisc reprezintă minutele (0-59), al doilea reprezintă ore (în 24 de ore, deci 13:00 este 13, miezul nopții începe la 0), al treilea asterisc înseamnă ziua (0-7, 0 și 7 sunt duminică), al patrulea indică luna, iar ultimul asterisc indică anul.

  Cum să joci DOOM clasic pe Linux cu motorul Doomsday

Numele fișierului executabil și calea acestuia sunt de asemenea menționate în fișier.

După salvarea și închiderea fișierului, veți vedea pe terminal un mesaj „crontab: se instalează un nou crontab”.

Pentru a verifica dacă lucrarea cron a funcționat sau nu, mergeți la directorul file.txt și imprimați conținutul acestuia pe terminal folosind cat:

 cat file.txt 

Acest lucru indică faptul că cron funcționează bine.

4. Verificați Procesele de rulare pe Linux

Un alt mod în care puteți verifica dacă demonul cron funcționează este prin listarea proceselor care rulează pe sistemul dumneavoastră. Puteți realiza acest lucru folosind comanda ps. Daemonul cron va apărea în ieșire ca crond.

 ps aux | grep cron 

Acest lucru confirmă că procesul cron rulează pe sistemul dumneavoastră Linux.

Automatizați și programați sarcinile sistemului cu cron

cron este unul dintre cele mai vitale utilitare de pe Linux, care permite sistemului să funcționeze eficient. Uneori trebuie să verificați dacă cron funcționează în timp ce depanați problemele sistemului.

Puteți realiza acest lucru fie verificând jurnalele cron, fie văzând procesele care rulează pe sistemul dumneavoastră. De asemenea, puteți verifica starea cron folosind utilitarul systemctl. În plus, rularea unui job cron de testare vă poate spune și dacă serviciul rulează sau nu.

Funcționarea fără probleme a cron vă permite să automatizați și să programați lucrări de sistem de zi cu zi. Majoritatea joburilor cron sunt create automat de aplicațiile instalate. Automatizarea și programarea sarcinilor îmbunătățește performanța generală a sistemului și îl menține sănătos.