मैं कर्नेल 3.10 के साथ Centos 7 का उपयोग कर रहा हूं और इसमें hwclock और chrony स्थापित और चल रहा है। यह लिखा है कि सिस्टम घड़ी को बूट समय पर हार्डवेयर घड़ी से सेट किया गया है। (यहाँ http://tldp.org/HOWTO/Clock-2.html )
"अन्य" सिस्टम घड़ी "है (कभी-कभी" कर्नेल घड़ी "भी कहा जाता है) या "सॉफ्टवेयर क्लॉक") जो टाइमर पर आधारित एक सॉफ्टवेयर काउंटर है बीच में। यह मौजूद नहीं है जब सिस्टम नहीं चल रहा है, तो यह है आरटीसी (या कुछ अन्य समय स्रोत) से आरंभिक रूप से बूट होने के लिए पहर।"
और यह init स्क्रिप्ट (जिसे systemd द्वारा प्रतिस्थापित किया गया था) या कर्नेल द्वारा ही (यहाँ पर) सेट किया जा सकता है https://wiki.gentoo.org/wiki/System_time ):
“आमतौर पर सिस्टम क्लॉक को सेटअप करने के लिए हार्डवेयर क्लॉक का उपयोग किया जाता है बूट। यह कर्नेल द्वारा या एक बूट सेवा (init) द्वारा किया जा सकता है स्क्रिप्ट)। "
हालांकि बाद में यह उल्लेख किया गया है कि आधुनिक कर्नेल पर (लेख थोड़ा पुराना लगता है) लिनक्स खुद को संभालता है (यहां) https://wiki.gentoo.org/wiki/System_time )।
"पर्याप्त रूप से आधुनिक कर्नेल (3.9 या नया) पर, लिनक्स हो सकता है सिस्टम समय को स्वचालित रूप से सेट करने के लिए कॉन्फ़िगर किया गया है। "
मैंने / var / log / dmesg फ़ाइल की जाँच की और यह मेरा मामला लगता है, अर्थात् कर्नेल ने बूट पर RTC से सिस्टम क्लॉक सेट किया है।
2.596137] rtc_cmos 00:00: सिस्टम क्लॉक को 2018-05-08 14:49:58 UTC (1525790998) पर
हालाँकि शटडाउन समय में बूट टाइम के बारे में मुझे बहुत कम जानकारी मिली है (और मेरे लिए जैसा कि काफी विवादास्पद)। यह लिखा है (यहाँ https://wiki.gentoo.org/wiki/System_time ) उस सिस्टम क्लॉक को शटडाउन पर आरटीसी में वापस सेट किया गया है। क्योंकि बूट सिस्टम समय पर कर्नेल द्वारा सेट किया गया है, मैंने अनुमान लगाया कि शटडाउन पर RTC में सिस्टम टाइम सेट करने के लिए कर्नेल जिम्मेदार हो सकता है, लेकिन उस पर कोई निश्चित जानकारी नहीं मिल सकती है।
इसलिए मेरे सवाल हैं: क्या सिस्टम बंद होने से सिस्टम घड़ी से आरटीसी तक का समय निर्धारित होता है या इसके कुछ अपवाद हो सकते हैं? (अपवाद शायद कर्नेल संस्करण या विशेष झंडे की तरह) और यदि हां, तो इसके लिए कौन जिम्मेदार है, कर्नेल या एक स्क्रिप्ट?
वैसे मैंने सवाल पढ़ा हार्डवेयर घड़ी और सिस्टम घड़ी के बीच संबंध लेकिन मेरा सवाल थोड़ा अधिक विशिष्ट और इतना अलग है।
// ------------------------------------------------ -------------------------------------------------- -------------- // मेरा प्रश्न होल्ड पर है इसलिए मैं यहां लिख रहा हूं
बग चर्चा के अनुसार यहाँ (हालांकि थोड़ा पुराना) ( https://bugzilla.redhat.com/show_bug.cgi?id=753487 ) आरटीसी वास्तव में शटडाउन पर सिस्टम समय के लिए सेट है और यह कर्नेल द्वारा किया जाता है
hwclock --systohc को हर शटडाउन पर उपयोग किया जाता है, लेकिन यह नहीं है अब और।
कर्नेल को पुन: असाइन करना।
ऐसा लगता है कि आरटीसी को सिस्टम टाइम मान सेट करने से संबंधित प्रश्न हल हो गए हैं।