Kako pokrenuti PHP skriptu kao običan korisnik s Cronom


Cron je moćan uslužni program za vremensko planiranje poslova u operativnim sustavima sličnim Unixu, uključujući Linux. Pokreće se kao demon i može se koristiti za planiranje poslova kao što su naredbe ili skripte ljuske za izvođenje sigurnosnih kopija, planiranje ažuriranja i još mnogo toga, koji se povremeno i automatski izvode u pozadini u određeno vrijeme, datume ili intervale.

Jedno ograničenje crona je da pretpostavlja da će sustav raditi zauvijek; stoga je prikladan za poslužitelje koji nisu stolna računala. Osim toga, možete zakazati zadatak u određeno ili kasnije vrijeme, koristeći naredbe 'at' ili 'batch': ali zadatak se pokreće samo jednom (ne ponavlja se).

Predloženo za čitanje: Kako zakazati poslove pomoću Anacrona na Linuxu

U ovom ćemo članku objasniti kako dopustiti normalnom korisniku sustava da pokrene ili izvrši PHP skriptu putem planera cron poslova u Linuxu.

Možete planirati poslove pomoću programa crontab (CRON TABle). Svaki korisnik može imati svoju crontab datoteku koja se sastoji od šest polja za definiranje posla:

  • Minute – prihvaća vrijednosti između 0-59.
  • Sat – prihvaća vrijednosti između 0-23.
  • Dan u mjesecu – pohranjuje vrijednosti između 1-31.
  • Mjesec u godini – pohranjuje vrijednosti između 1-12 ili siječnja-prosinca, možete koristiti prva tri slova naziva svakog mjeseca, npr. siječanj ili lipanj.
  • Dan u tjednu – sadrži vrijednosti između 0-6 ili ned-sub. Ovdje također možete koristiti prva tri slova naziva svakog dana, npr. ned ili sri.
  • Naredba – naredba koju treba izvršiti.

Za stvaranje ili uređivanje unosa u vlastitoj crontab datoteci upišite:

crontab -e

A da vidite sve svoje crontab unose, upišite ovu naredbu (koja će jednostavno ispisati crontab datoteku na std izlaz):

crontab -l

Međutim, ako ste administrator sustava i želite izvršiti PHP skriptu kao drugi korisnik, trebate je zakazati u datoteci /etc/crontab ili crontab datoteci root korisnika koja podržava dodatno polje za određivanje korisničko ime:

sudo vi /etc/crontab

I zakažite izvršavanje svoje PHP skripte na ovaj način, navedite korisničko ime nakon odjeljka za vrijeme.

0 0 * * * tecmint /usr/bin/php -f /var/www/test_site/cronjobs/backup.php

Gornji unos izvršava skriptu /var/www/test_site/cronjobs/backup.php svaki dan u ponoć kao korisnik tecmint.

Ako gornju skriptu želite automatski izvršavati svakih deset minuta, dodajte sljedeći unos u crontab datoteku.

*/10 * * * * tecmint /usr/bin/php -f /var/www/test_site/cronjobs/backup.php

U gornjem primjeru, */10 * * * * predstavlja kada bi se posao trebao dogoditi. Prva brojka prikazuje minute – u ovom scenariju, svakih "deset" minuta. Ostale brojke pokazuju redom sat, dan, mjesec i dan u tjednu.

Također biste mogli pročitati sljedeće povezane članke.

  1. Korištenje shell skriptiranja za automatizaciju zadataka održavanja Linux sustava
  2. 12 korisnih PHP naredbenih linija koje svaki korisnik Linuxa mora znati
  3. Kako pokrenuti PHP kodove u Linux terminalu
  4. 30 korisnih Linux naredbi za administratore sustava

To je sve! Nadamo se da će vam ovaj članak biti koristan. Ako imate bilo kakvih pitanja ili dodatnih ideja o ovoj temi, upotrijebite obrazac za komentare u nastavku.