आप सिस्टम को रिबूट करने के लिए कर्नेल कमांड लाइन पर "पैनिक = एन" डाल सकते हैं।
लेकिन क्या बूट लोडर एक नाटक में आने से पहले इसे निर्दिष्ट करने के लिए एक डिफ़ॉल्ट विकल्प है (डिफ़ॉल्ट कर्नेल कमांड लाइन विकल्प के अलावा)? कुछ कर्नेल विकल्प हो सकता है?
आप सिस्टम को रिबूट करने के लिए कर्नेल कमांड लाइन पर "पैनिक = एन" डाल सकते हैं।
लेकिन क्या बूट लोडर एक नाटक में आने से पहले इसे निर्दिष्ट करने के लिए एक डिफ़ॉल्ट विकल्प है (डिफ़ॉल्ट कर्नेल कमांड लाइन विकल्प के अलावा)? कुछ कर्नेल विकल्प हो सकता है?
जवाबों:
ऐसा कॉन्फिग विकल्प नहीं लगता है। डिफ़ॉल्ट टाइमआउट 0 है जो http://www.mjmwired.net/kernel/Documentation/kernel-parameters.txt#1898 के अनुसार "हमेशा के लिए प्रतीक्षा करें" है।
विकल्प को कर्नेल / घबराहट में परिभाषित किया गया है । आप एक पैच लिख सकते हैं जो प्रारंभिक मूल्य को कुछ अलग करता है।
3 सेकंड के बाद रिबूट को हार्डकोड करने के लिए, बदलें:
int panic_timeout;
सेवा:
int panic_timeout = 3;
से man proc
:
/ Proc / sys / कर्नेल / आतंक
यह फ़ाइल कर्नेल चर पैनिक_टाइमआउट को रीड / राइट एक्सेस प्रदान करती है। यदि यह शून्य है, तो कर्नेल घबराहट पर लूप करेगा; यदि नॉनजरो यह इंगित करता है कि कर्नेल को इस संख्या के सेकंड के बाद ऑटोरबूट करना चाहिए। जब आप सॉफ़्टवेयर वॉचडॉग डिवाइस ड्राइवर का उपयोग करते हैं, तो अनुशंसित सेटिंग 60 है।
/dev/watchdog
थोड़ी देर में छुआ नहीं गया है तो रिबूट को ट्रिगर करना )। देखते हैं Documentation/watchdog/watchdog-api.txt
।
कॉन्फ़िगरेशन फ़ाइल बूट (ग्रब) कॉन्फ़िगरेशन फ़ाइल ही है, क्योंकि यह बूट समय पर लगाया गया पैरामीटर है और ग्रब को किसी अन्य कॉन्फ़िगरेशन फ़ाइल से पढ़ने की उम्मीद नहीं की जा सकती है, जबकि फाइलसिस्टम माउंट नहीं है।
हालाँकि, यह एक आरंभिक सेटिंग है, रनटाइम को इसके माध्यम से भी संशोधित किया जा सकता है sysctl
। तो, अनिवार्य रूप /etc/sysctl.conf
से पैरामीटर के साथ kernel.panic = 3
अद्यतन करना कॉन्फ़िगरेशन अपडेट है।
kernel.panic
एक sysctl है । इन्हें कॉन्फ़िगर करने के कई तरीके हैं, उदाहरण के लिए sysctl.d के माध्यम से ।
लिनक्स कर्नेल सपोर्ट करता है CONFIG_CMDLINE_BOOL
बिल्ड समय पर कर्नेल में बूट तर्कों को निर्दिष्ट करने की अनुमति दें। कुछ प्रणालियों (जैसे एम्बेडेड वाले) पर, कर्नेल के साथ कुछ या सभी कर्नेल बूट तर्कों को प्रदान करना आवश्यक या सुविधाजनक है (अर्थात, उन्हें प्रदान करने के लिए बूट लोडर पर भरोसा नहीं करना है।)
उदाहरण के लिए इस "पोर्टल" पर भी कुछ उदाहरण हैं
/superuser/778826/config-cmdline-override-set-but-hardcoded-vga-boot-parameter-ignored
पहले अन्य उत्तरों में जानकारी समाप्त करें। मान को कर्नेल / आतंक। c और rw में sysctl के माध्यम से परिभाषित किया गया है। इसे बूट कमैंलाइन के रूप में पास किया जा सकता है।
मैं और क्या कहने वाला हूं, संकलन के दौरान बूट कमांडलाइन को डिफ़ॉल्ट मान सेट किया जा सकता है ।