cron
-
Konfiguracioni fajl /etc/crontab. Direktorijum za konfiguracione fajlove je /var/spool/cron/
-
Demon crond poziva run-parts za pokretanje skripti iz direktorijuma /etc/cron.*.
Demon cron pri svakoj aktivaciji proverava datum izmene fajla /etc/crontab i direktorijuma /var/spool/cron/. Ako su se promenili, on ponovo učitava sve izmene i uzima ih u obzir pri narednim pozivima. Pošto alatka crontab nakon izmene fajla sa zadacima menja datum izmene za folder /var/spool/cron/, nakon što se unesu izmene u korisnički fajl rasporeda, nema potrebe za restartovanjem procesa cron - ove izmene će biti uzete u obzir pri sledećoj aktivaciji. Iz tog razloga, za izmenu korisničkih fajlova rasporeda treba koristiti komandu crontab -e, a ne uređivati fajlove direktno. Za fajl /etc/crontab datum izmene se proverava posebno, pa ga možete menjati običnim editorom (za to su potrebni root privilegije).
Izlaz koji generišu izvršene komande podrazumevano se šalje na poštansko sanduče vlasnika fajla rasporeda (obično je to root, a njegova EMail adresa je navedena u fajlu /etc/aliases). Ako želite da poništite podrazumevano ponašanje, koristite promenljivu MAILTO. Prazna vrednost (MAILTO="") će preusmeriti poruke u /dev/null.
Format fajla crontab takođe dozvoljava da se umesto prvih pet pozicija koje označavaju vreme izvršenja zadatka koriste unapred definisane vrednosti:
-
@reboot (izvršiti pri pokretanju operativnog sistema)
-
@yearly (izvršiti godišnje u ponoć 1. januara)
-
@monthly (izvršiti mesečno u ponoć 1. dana u mesecu)
-
@weekly (izvršiti u ponoć svakog ponedeljka)
-
@daily (izvršiti dnevno u 0:00)
-
@hourly (izvršiti na početku svakog sata).
Pogledajte cron fajl za korisnika www-data. Opcija -e omogućava uređivanje cron fajla korisnika www-data.
# crontab -u www-data -e # редактировать содержимое файла crontab # crontab -u www-data -l # отобразить содержимое файла crontab
# Example of job definition: # .---------------- minute (0 - 59) # | .------------- hour (0 - 23) # | | .---------- day of month (1 - 31) # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat # | | | | | # * * * * * command to be executed
Primeri:
-
Pokrenuti program svakih dva dana u 10:00 i poslati izveštaj na EMail naveden u promenljivoj MAILTO
MAILTO=noc@example.net 0 10 */2 * * root /usr/local/repl/restart_repl.sh
-
Pokrenuti skriptu 1. i 15. dana svakog meseca u 2:05, kao i nedeljom (Day i WDay rade u režimu "ILI")
5 2 1,15 * Sun /home/script
