Hvernig á að keyra PHP script sem venjulegan notanda með Cron


Cron er öflugt tól til tímabundinnar tímasetningar á störfum í Unix-líkum stýrikerfum þar á meðal Linux. Það keyrir sem púkinn og er hægt að nota til að skipuleggja störf eins og skipanir eða skeljaforskriftir til að framkvæma öryggisafrit, tímaáætlunaruppfærslur og margt fleira, sem keyra reglulega og sjálfkrafa í bakgrunni á ákveðnum tímum, dagsetningum eða millibili.

Ein takmörkun á cron er að það gerir ráð fyrir að kerfi muni keyra að eilífu; svo það er hentugur fyrir aðra netþjóna en borðtölvur. Að auki geturðu tímasett verkefni á tilteknum tíma eða síðar með því að nota „at“ eða „lotu“ skipanirnar: en verkefnið er aðeins keyrt einu sinni (það er ekki endurtekið).

Í þessari grein munum við útskýra hvernig á að leyfa venjulegum kerfisnotanda að keyra eða keyra PHP handrit í gegnum cron vinnuáætlun í Linux.

Þú getur tímasett störf með því að nota crontab (CRON TABle) forritið. Hver notandi getur haft sína eigin crontab skrá sem samanstendur af sex reitum til að skilgreina starf:

  • Mínúta – tekur við gildum á bilinu 0-59.
  • Klukkutími – tekur við gildum á milli 0-23.
  • Mánaðardagur – geymir gildi á milli 1-31.
  • Mánaður ársins – geymir gildi á milli 1-12 eða jan-des, þú getur notað fyrstu þrjá stafina í nafni hvers mánaðar, þ.e. jan eða jún.
  • Vikudagur – heldur gildum á milli 0-6 eða sun-lau, hér geturðu líka notað fyrstu þrjá stafina í nafni hvers dags, þ.e. sun eða mið.
  • Skipun – skipun sem á að framkvæma.

Til að búa til eða breyta færslum í eigin crontab skrá skaltu slá inn:

$ crontab -e

Og til að skoða allar crontab færslurnar þínar skaltu slá inn þessa skipun (sem mun einfaldlega prenta crontab skrána í std úttak):

$ crontab -l

Hins vegar, ef þú ert kerfisstjóri og vilt keyra PHP skriftu sem annar notandi, þarftu að tímasetja það í /etc/crontab skránni eða crontab skrá rótnotanda sem styðja aukalega skrá til að tilgreina notandanafnið:

$ sudo vi /etc/crontab

Og skipuleggja PHP handritið þitt til að keyra svona, tilgreindu notandanafnið á eftir tímasetningarhlutanum.

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

Ofangreind færsla keyrir handritið /var/www/test_site/cronjobs/backup.php á hverjum degi á miðnætti sem notandi tecmint.

Ef þú vilt keyra handritið að ofan sjálfkrafa á tíu mínútna fresti skaltu bæta eftirfarandi færslu við crontab skrána.

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

Í dæminu hér að ofan táknar */10 * * * * hvenær verkið ætti að gerast. Fyrsta myndin sýnir mínútur – í þessari atburðarás, á hverri \tíu\ mínútu. Hinar tölurnar sýna, í sömu röð, klukkustund, dag, mánuð og vikudag.

Þú gætir líka viljað lesa þessar eftirfarandi tengdu greinar.

  1. Notkun Shell Scripting til að gera viðhaldsverkefni Linux kerfis sjálfvirkt
  2. 12 Gagnleg PHP stjórnlínunotkun sem allir Linux notendur verða að vita
  3. Hvernig á að keyra PHP kóða í Linux Terminal
  4. 30 Gagnlegar Linux skipanir fyrir kerfisstjóra

Það er allt og sumt! Við vonum að þér finnist þessi grein gagnleg. Ef þú hefur einhverjar spurningar eða auka hugmyndir til að deila varðandi þetta efni, notaðu athugasemdareyðublaðið hér að neðan.