1. क्रॉन क्या है?
क्रॉन एक समय-आधारित जॉब शेड्यूलर है जो लिनक्स और यूनिक्स-आधारित ऑपरेटिंग सिस्टम के लिए है। यह मुख्यतः सिस्टम प्रशासकों और डेवलपर्स द्वारा नियमित रूप से चलने वाले कार्यों को स्वचालित करने के लिए उपयोग किया जाता है। क्रॉन उबंटू पर पहले से स्थापित आता है और सर्वर प्रबंधन, बैकअप, निर्धारित स्क्रिप्ट निष्पादन, और विभिन्न अन्य स्वचालन कार्यों के लिए व्यापक रूप से उपयोग किया जाता है।
क्रॉन कैसे काम करता है
क्रॉन “crontab” नामक फ़ाइल का उपयोग करके कार्य करता है, जहाँ कमांड्स को निर्धारित समय या अंतराल पर चलाने के लिए निर्दिष्ट किया जाता है। crontab फ़ाइल में पाँच फ़ील्ड होते हैं, जो प्रत्येक निर्दिष्ट मानों के आधार पर कार्यों की सटीक समय‑सारणी बनाने की अनुमति देते हैं।
- Minute (0–59)
- घंटा (0–23)
- महीने का दिन (1–31)
- महीना (1–12)
- सप्ताह का दिन (0–7, जहाँ 0 और 7 रविवार को दर्शाते हैं)
उदाहरण के लिए, यदि आप एक बैकअप कार्य को हर दिन सुबह 5 बजे चलाने के लिए शेड्यूल करना चाहते हैं, तो आप अपनी crontab फ़ाइल में निम्नलिखित पंक्ति जोड़ेंगे:
0 5 * * * tar -zcf /var/backups/home.tgz /home/
यह दर्शाता है कि क्रॉन का उपयोग दोहराव वाले कार्यों को कुशलतापूर्वक स्वचालित करने के लिए कैसे किया जा सकता है।
क्रॉन का उपयोग कौन करे?
क्रॉन सिस्टम प्रशासकों, दैनिक कार्यों को सरल बनाने की इच्छा रखने वाले डेवलपर्स, और उन सभी के लिए आवश्यक है जिन्हें सर्वर वातावरण में निर्धारित स्क्रिप्ट चलानी होती है।

2. क्रॉन जॉब्स सेट अप करना
क्रॉनटैब फ़ाइल को संपादित करना
एक क्रॉन जॉब सेट करने के लिए, आपको “crontab” फ़ाइल तक पहुँच कर उसे संपादित करना होगा। उबंटू पर, आप निम्नलिखित कमांड का उपयोग करके अपनी उपयोगकर्ता‑विशिष्ट क्रॉनटैब फ़ाइल खोल सकते हैं:
crontab -e
क्रॉन जॉब की मूल सिंटैक्स
एक क्रॉन जॉब एंट्री में समय फ़ील्ड्स होते हैं, जिसके बाद निष्पादित करने के लिए कमांड आता है। सामान्य स्वरूप इस प्रकार है:
Minute Hour Day Month Weekday Command
उदाहरण के लिए, निम्नलिखित क्रॉन जॉब हर दिन सुबह 5 बजे /home/
डायरेक्टरी का बैकअप बनाता है:
0 5 * * * tar -zcf /var/backups/home.tgz /home/
क्रॉनटैब परिवर्तन सहेजना और सत्यापित करना
जब आप क्रॉनटैब फ़ाइल में एक जॉब जोड़ लेते हैं, तो परिवर्तन लागू करने के लिए संपादक को सहेजें और बंद करें। अपने वर्तमान क्रॉन जॉब्स को सत्यापित करने के लिए निम्नलिखित कमांड का उपयोग करें:
crontab -l
3. उन्नत क्रॉन जॉब शेड्यूलिंग
कस्टम अंतराल पर जॉब्स चलाना
किसी जॉब को विशिष्ट अंतराल पर चलाने के लिए, जैसे हर मिनट या हर पाँच मिनट, निम्नलिखित सिंटैक्स का उपयोग करें:
- हर मिनट:
* * * * * /path/to/script.sh
- हर पाँच मिनट पर:
*/5 * * * * /path/to/script.sh
विशिष्ट दिनों और समय पर जॉब्स चलाना
यदि आपको किसी कार्य को विशिष्ट दिनों पर चलाना है, तो weekday फ़ील्ड का उपयोग करें। उदाहरण के लिए, हर सोमवार को सुबह 2:15 बजे स्क्रिप्ट चलाने के लिए, उपयोग करें:
15 2 * * 1 /path/to/script.sh
4. त्रुटि प्रबंधन और समस्या निवारण
क्र जब्स के सामान्य मुद्दे
क्रॉन जॉब निष्पादित नहीं हो रहा है
यदि आपका क्रॉन जॉब चल नहीं रहा है, तो निम्नलिखित मुख्य बिंदुओं की जाँच करें:
- अनुमतियाँ जाँचें: सुनिश्चित करें कि स्क्रिप्ट या कमांड के पास निष्पादन अनुमतियाँ हैं।
- पूर्ण पथों का उपयोग करें: Cron एक सीमित वातावरण में चलता है, इसलिए अपने कमांड्स और फाइलों के लिए पूर्ण पथ निर्दिष्ट करें।
/usr/bin/python3 /path/to/script.py
क्रॉन लॉग्स की जाँच
क्रॉन अपने निष्पादन विवरण को /var/log/syslog
में लॉग करता है। क्रॉन‑संबंधी त्रुटियों के लिए लॉग्स की जाँच करने हेतु, उपयोग करें:
grep CRON /var/log/syslog

5. सुरक्षा विचार
उपयोगकर्ता पहुंच को नियंत्रित करना
Cron जॉब्स शेड्यूल करने वाले उपयोगकर्ताओं को सीमित करने के लिए, आप /etc/cron.allow
और /etc/cron.deny
फ़ाइलों का उपयोग कर सकते हैं। /etc/cron.allow
में उपयोगकर्ताओं को सूचीबद्ध करके, केवल वही उपयोगकर्ता Cron जॉब्स बनाने की अनुमति पाएँगे।
echo "user_name" >> /etc/cron.allow
लॉगिन सुरक्षा और Cron जॉब्स
जब आप ऐसे Cron जॉब्स चलाते हैं जिनमें प्रमाणीकरण की आवश्यकता होती है, तो पासवर्ड‑संबंधी त्रुटियों से बचना महत्वपूर्ण है। SSH कुंजी स्वचालन या एक सुरक्षित पासवर्ड मैनेजर का उपयोग करने से प्रमाणीकरण विफलताओं को रोका जा सकता है।
6. Anacron का उपयोग: अनियमित कार्यों का स्वचालन
Anacron क्या है?
Anacron एक जॉब शेड्यूलर है जो उन सिस्टमों के लिए डिज़ाइन किया गया है जो लगातार चलते नहीं रहते। Cron के विपरीत, जो निर्धारित समय पर सिस्टम को ऑनलाइन रहने की आवश्यकता रखता है, Anacron यह सुनिश्चित करता है कि छूटे हुए जॉब्स तब चलें जब सिस्टम अगली बार चालू हो। यह डेस्कटॉप और लैपटॉप के लिए आदर्श बनाता है।
7. क्रॉन जॉब्स के व्यावहारिक उपयोग के मामले
बैकअप का स्वचालन
नियमित शेड्यूल पर बैकअप को स्वचालित करने के लिए एक क्रॉन जॉब सेट अप करने से डेटा हानि को रोकने में मदद मिल सकती है। नीचे एक उदाहरण क्रॉन जॉब दिया गया है जो प्रत्येक दिन सुबह 2 बजे /home/
डायरेक्टरी का बैकअप बनाता है और फ़ाइलनाम में वर्तमान तिथि शामिल करता है।
0 2 * * * tar -zcf /var/backups/home_backup_$(date +%Y-%m-%d).tgz /home/
8. Conclusion
Cron और Anacron का उपयोग करके, आप आवर्ती कार्यों को कुशलतापूर्वक स्वचालित कर सकते हैं और अपने सिस्टम संचालन की विश्वसनीयता को सुधार सकते हैं। सही तरीके से उपयोग करने पर, ये उपकरण परिचालन लागत को कम करते हैं और यह सुनिश्चित करते हैं कि आवश्यक रखरखाव कार्य बिना मैन्युअल हस्तक्षेप के चलें। इन्हें अपने सिस्टम में लागू करें और स्वचालन के लाभों का अनुभव करें।