कैसे क्रोन के साथ सामान्य उपयोगकर्ता के रूप में PHP स्क्रिप्ट को चलाने के लिए


लिनक्स सहित यूनिक्स जैसे ऑपरेटिंग सिस्टम में नौकरियों के समय-निर्धारण के लिए क्रोन एक शक्तिशाली उपयोगिता है। यह एक डेमॉन के रूप में चलता है और इसका उपयोग बैकअप, शेड्यूल अपडेट और कई और अधिक करने के लिए कमांड या शेल स्क्रिप्ट जैसी नौकरियों को शेड्यूल करने के लिए किया जा सकता है, जो समय-समय पर और विशिष्ट समय, तिथियों या अंतराल पर स्वचालित रूप से पृष्ठभूमि में चलते हैं।

क्रोन की एक सीमा यह है कि यह मानता है कि एक प्रणाली हमेशा के लिए चलेगी; इसलिए यह डेस्कटॉप मशीनों के अलावा अन्य सर्वरों के लिए उपयुक्त है। इसके अतिरिक्त, आप 'या' बैच 'आदेशों का उपयोग करके दिए गए या बाद के समय में किसी कार्य को शेड्यूल कर सकते हैं: लेकिन यह कार्य केवल एक बार चलाया जाता है (यह दोहराया नहीं जाता है)।

इस लेख में, हम बताएंगे कि कैसे एक सामान्य सिस्टम उपयोगकर्ता को लिनक्स में क्रोन जॉब शेड्यूलर के माध्यम से PHP स्क्रिप्ट को चलाने या निष्पादित करने की अनुमति देता है।

आप crontab ( CRON TABle ) प्रोग्राम का उपयोग करके नौकरियों को निर्धारित कर सकते हैं। प्रत्येक उपयोगकर्ता की अपनी crontab फ़ाइल हो सकती है, जो नौकरी को परिभाषित करने के लिए छह क्षेत्रों से बनी होती है:

  • Minute – accepts values between 0-59.
  • Hour – accepts values between 0-23.
  • Day of Month – stores values between 1-31.
  • Month of the year – stores values between 1-12 or Jan-Dec, you can use first three letters of each month’s name i.e Jan or Jun.
  • Day of week – holds values between 0-6 or Sun-Sat, Here also you can use first three letters of each day’s name i.e Sun or Wed.
  • Command – command to be executed.

अपनी स्वयं की crontab फ़ाइल में प्रविष्टियाँ बनाने या संपादित करने के लिए:

$ crontab -e

और अपनी सभी crontab प्रविष्टियों को देखने के लिए, इस कमांड को टाइप करें (जो केवल crontab फाइल को std आउटपुट में प्रिंट करेगा):

$ crontab -l

हालाँकि, यदि आप एक सिस्टम प्रशासक हैं और किसी अन्य उपयोगकर्ता के रूप में PHP स्क्रिप्ट निष्पादित करना चाहते हैं, तो आपको इसे /etc/crontab फ़ाइल या रूट उपयोगकर्ता की crontab फ़ाइल में शेड्यूल करने की आवश्यकता है जो निर्दिष्ट करने के लिए दायर एक अतिरिक्त का समर्थन करती है। उपयोगकर्ता नाम:

$ sudo vi /etc/crontab

और अपनी PHP स्क्रिप्ट को इस तरह निष्पादित करें, समय खंड के बाद उपयोगकर्ता नाम निर्दिष्ट करें।

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

उपरोक्त प्रविष्टि उपयोगकर्ता tecmint के रूप में स्क्रिप्ट /var/www/test_site/cronjobs/backup.php आधी रात को निष्पादित करती है।

यदि आप प्रत्येक दस मिनट में स्क्रिप्ट के ऊपर स्वचालित रूप से निष्पादित करना चाहते हैं, तो निम्न प्रविष्टि को crontab फ़ाइल में जोड़ें।

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

उपरोक्त उदाहरण में, */10 * * * * यह दर्शाता है कि नौकरी कब होनी चाहिए। पहला आंकड़ा दिखाता है मिनट - इस परिदृश्य में, प्रत्येक <कोड> दस मिनट पर। अन्य आंकड़े सप्ताह के क्रमशः घंटे, दिन, महीने और दिन दिखाते हैं।

आप इन निम्नलिखित संबंधित लेखों को पढ़ना पसंद कर सकते हैं।

  1. Using Shell Scripting to Automate Linux System Maintenance Tasks
  2. 12 Useful PHP Commandline Usage Every Linux User Must Know
  3. How to Run PHP Codes in Linux Terminal
  4. 30 Useful Linux Commands for System Administrators

बस इतना ही! हमें उम्मीद है कि आपको यह लेख उपयोगी लगेगा। यदि आपके पास इस विषय से संबंधित कोई प्रश्न या अतिरिक्त विचार हैं, तो नीचे दिए गए टिप्पणी फ़ॉर्म का उपयोग करें।