@Reboot को /etc/cron.d में कैसे उपयोग करें


17

मैं व्यक्तिगत उपयोगकर्ता के crontabs को /etc/cron.d पर स्थानांतरित कर रहा हूं, क्योंकि यह उचित बैकअप, पुनर्स्थापना और संस्करण बनाने की अनुमति देगा।

अब तक, जैसा कि मैं उपयोगकर्ता के crontabs और आदि के बीच एकमात्र अंतर समझता हूं कि आपको उपयोगकर्ता को 6 वें कॉलम के रूप में निर्दिष्ट करना होगा। क्या यह सही है?

और मेरा मुख्य प्रश्न, जिसके लिए मुझे इंटरनेट पर कहीं भी उत्तर नहीं मिला: @reboot/etc/cron.d या / etc / crontab में उपयोग करने का सही तरीका क्या है ?

कुछ पसंद है @reboot root command?

जवाबों:


20

से crontab आदमी पेज :

/Etc/cron.d/ में नौकरियां

Cron.d में कार्य प्रणाली की नौकरियां हैं, जो आमतौर पर एक से अधिक उपयोगकर्ता के लिए उपयोग की जाती हैं। यही कारण है कि उपयोगकर्ता के नाम की आवश्यकता है। पहली पंक्ति पर मेल्टो वैकल्पिक है।

JOB IN /etc/cron.d/job के लिए उदाहरण

 #login as root
 #create job with preferred editor (e.g. vim)
 MAILTO=root
 * * * * * root touch /tmp/file

/ Crontab के बारे में संपूर्ण अनुभाग / etc में है , इसलिए मुझे लगता है कि उस उपयोगकर्ता का समावेश जिसके नाम पर नौकरी चलती है, वास्तव में एकमात्र अंतर है।

उसी आदमी पृष्ठ से फिर:

ये विशेष समय विनिर्देश "उपनाम" समर्थित हैं, जो 5 प्रारंभिक समय और दिनांक फ़ील्ड को प्रतिस्थापित करते हैं, और '@' वर्ण द्वारा उपसर्ग किए जाते हैं:

@ क्रेबूट: रिबूट के बाद एक बार चलाएं।

इस प्रकार आपका अनुमान है कि @reboot का उपयोग करने का उचित तरीका है

   @reboot user_name command

है सही


1

/etc/crontabआप के मामले में बस इन पंक्तियों को जोड़ना होगा।

@reboot        command

जहां कमांड किसी भी स्क्रिप्ट या एकल फ़ाइल हो सकती है।


क्या वह काम करता है? /etc/crontabआमतौर पर उपयोगकर्ता नाम की आवश्यकता होती है।
mwfearnley

1

यदि आप इसे नीचे के रूप में अंतःक्रियात्मक रूप से चला रहे हैं, तो आप उपयोगकर्ता को निर्दिष्ट नहीं करते हैं:

crontab -e
@reboot /root/mycommand

यदि आप इसे /etc/cron.d, उदा /etc/cron.d/mycronfile, में फ़ाइल के रूप में डाल रहे हैं, तो आपको उपयोगकर्ता डालने की आवश्यकता है:

@reboot root /root/mycommand
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.