क्या crond गर्मी के समय को +1 घंटे बदलता है?


16

पिछले सप्ताहांत हमें 02:00 से 03:00 तक का समय बदलना पड़ा।

प्रश्न: अगर 02:30 बजे क्रोनजॉब होता तो क्या होता?

क्रोन शेड्यूलिंग के लिए एक बहुत पुराना समाधान है, इसे संभवतः संभालना चाहिए, लेकिन यह नहीं पता कि कैसे।

जवाबों:


18

यह संभवत: आपके क्रोन इम्प्लांटेशन पर निर्भर करता है, लेकिन लोकप्रिय विक्सी क्रोन मैनुअल में बताता है:

क्रोन फिर हर मिनट जागता है, सभी संग्रहीत क्रॉस्टैब्स की जांच करता है, प्रत्येक कमांड की जांच करता है कि क्या इसे चालू मिनट में चलाया जाना चाहिए।

तथा

विशेष विचार तब मौजूद होता है जब घड़ी को 3 घंटे से कम समय के लिए बदल दिया जाता है, उदाहरण के लिए, दिन के उजाले की बचत समय की शुरुआत और अंत में। यदि समय आगे की ओर बढ़ गया है, तो जो नौकरियां उस समय में समाप्त हो गई थीं, वे बदलाव के तुरंत बाद चलेंगी। इसके विपरीत, यदि समय 3 घंटे से कम समय से पीछे चला गया है, तो वे कार्य जो दोहराए गए समय में आते हैं, उन्हें फिर से नहीं चलाया जाएगा।

केवल एक विशेष समय पर चलने वाली नौकरियां (@ घंटे के रूप में निर्दिष्ट नहीं हैं, और न ही घंटे या मिनट स्पेसियर में '*' से प्रभावित होती हैं)। वाइल्डकार्ड के साथ निर्दिष्ट नौकरियां तुरंत नए समय के आधार पर चलाई जाती हैं।

चूंकि डीएसटी परिवर्तन 3 घंटे से कम था, इसलिए आपका कार्यक्रम 3:00 पूर्वाह्न के तुरंत बाद चलेगा

मुझे यकीन नहीं है कि अगर यह विक्सी क्रोन विशिष्ट व्यवहार है, तो मुझे याद है कि यह कैसे मेरे पीडीपी -11 ने 80 के दशक में वापस काम किया, लेकिन मुझे यकीन नहीं है।


2
वाह, 80 के दशक से ज्ञान - सलाम!
इसहाक

अंगूठे का नियम: वर्ष में एक बार उस घंटे में आपके क्रोन नहीं चलेंगे। वर्ष में एक बार आपके क्रोन दो बार चलेंगे। कोरोलरी: यह हमेशा सच नहीं होता है। संबंधित: स्थानीय समय क्षेत्र का उपयोग करना बंद करो!
tedder42

@ tedder42 कृपया संदर्भ प्रदान करें, आपके दावे प्रलेखन और क्रोन के वास्तविक व्यवहार दोनों के विपरीत हैं।
एंथन


यह किस्सा 2am और 3am के संदर्भ में है और इस प्रश्न की कोई प्रासंगिकता नहीं है (जो 2:30 बजे संदर्भित है)। आपका संदर्भ दिलचस्प (पुराना) व्यवहार हो सकता है, यह मेरे अनुभव के साथ संरेखित नहीं होता है। और टाइमजोन के बिना सर्वर चलाने की अपनी समस्याएं हैं।
एन्थॉन

2

सबसे अच्छा उपाय यह है कि आपके कंप्यूटर को UTC, (समन्वित यूनिवर्सल टाइम), AKA GMT या ज़ुलु समय के साथ हार्डवेयर घड़ी के साथ चल रहा है और केवल डे लाइट सेविंग की अनुमति देने के लिए स्थानीय समय क्षेत्र सेट करके समय को प्रदर्शित करने के तरीके को बदलें समय लगेगा।

SUSE लाइनेक्स पर, और संभवत: अधिकांश अन्य, यदि हार्डवेयर क्लॉक सिस्टम -> पर्यावरण -> क्लॉक -> HWCLOCK यूटीसी के लिए -यू ध्वज के साथ सेट किया गया है और आपका समय क्षेत्र उस स्थान पर सेट है जहां आप सिस्टम स्वचालित रूप से स्थानीय समय प्रदर्शित करेंगे आपके लिए डीएसटी सुधार के साथ।

इसके कई फायदे हैं:

  • आपको डीएसटी परिवर्तनों के लिए घड़ी को मैन्युअल रूप से समायोजित करने की आवश्यकता नहीं होगी
  • UTC समय पर CRON टैब को संग्रहीत और निष्पादित किया जाएगा
  • यदि कोई फ़ाइल, उदाहरण के लिए, एक लॉग, डीएसटी के अंत से पहले 01:30 पर लिखा गया है और दूसरा डीएसटी के अंत के बाद 01:20 पर है, तो फ़ाइल अभी भी दूसरे की तुलना में "नया" होगी क्योंकि फ़ाइल टाइमस्टैम्प यूटीसी होगा और प्रदर्शन समय में वर्तमान समय क्षेत्र के आधार पर प्रदर्शन के लिए बस अनुवाद किया गया है।

अधिक जानकारी के लिए man hwclockकिसी टर्मिनल में टाइप करें ।


2
एक मामूली निपिक। UTC "Universal Time Constant" नहीं है। UTC का अर्थ है समन्वित सार्वभौमिक समय
fpmurphy
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.