<पी> यदि आप आधुनिक लिनक्स डिस्ट्रो का उपयोग कर रहे हैं, तो शट डाउन के दौरान आपको निश्चित रूप से "एक स्टॉप जॉब चल रहा है" संदेश मिलेगा, और यह शटडाउन प्रक्रिया को 90 सेकंड तक रोक देगा। पता लगाएं कि यह संदेश क्यों दिखाई देता है, और आप इसे कैसे कम कर सकते हैं। <पी> सामग्री तालिका यह एक सुरक्षा सुविधा है, कोई बग नहीं
<पी> सबसे पहली चीज़ जो आपको जानने की ज़रूरत है वह यह है कि "एक स्टॉप जॉब चल रहा है" संदेश सिस्टम में निर्मित एक सुरक्षा सुविधा है, कोई बग नहीं। <पी> उबंटू, फेडोरा और आर्क जैसे आधुनिक लिनक्स वितरण बूट और शटडाउन प्रक्रियाओं को प्रबंधित करने के लिए सिस्टमड का उपयोग करते हैं। जब आप शट डाउन पर क्लिक करते हैं, तो Systemd केवल पावर प्लग को नहीं खींचता है। यह SIGTERM नामक एक विनम्र संकेत भेजता है प्रत्येक चल रही सेवा और एप्लिकेशन के लिए। अधिकांश एप्लिकेशन, यह सिग्नल प्राप्त करने के बाद, अपना डेटा सहेजते हैं, अपनी फ़ाइलें बंद करते हैं, और शालीनता से बंद हो जाते हैं। <पी> हालाँकि, कुछ सेवाओं को अपने कार्यों को पूरा करने और सिग्नल को अनदेखा करने के लिए अधिक समय की आवश्यकता होती है। तभी आपको चेतावनी संदेश दिखाई देता है। यह देरी आमतौर पर इसलिए होती है क्योंकि कुछ सेवाओं, जैसे नेटवर्क प्रबंधक, कंटेनर, उपयोगकर्ता सत्र, या नेटवर्क माउंटेड ड्राइव को कनेक्शन बंद करने या डेटा को सुरक्षित रूप से सहेजने के लिए अतिरिक्त समय की आवश्यकता होती है। <पी> कई लिनक्स उपयोगकर्ता जब "एक स्टॉप जॉब चल रहा है" संदेश देखते हैं तो समाधान की खोज करते हैं, यह मानते हुए कि कुछ टूट गया है। सच्चाई यह है कि Systemd डेवलपर्स ने इस व्यवहार को जानबूझकर बनाया है। मूल रूप से, यह प्रतीक्षा अवधि है, आमतौर पर 90 सेकंड, जो सिस्टमड अपने लंबित कार्यों को पूरा करने के लिए सेवाएं देता है। यदि कोई सेवा कॉन्फ़िगर किए गए टाइमआउट के भीतर समाप्त नहीं होती है, तो Systemd उसे SIGKILL का उपयोग करके जबरन समाप्त कर देता है। और शटडाउन प्रक्रिया जारी रखता है।
<पी> इस शानदार शटडाउन के साथ, कई एप्लिकेशन अपना काम पूरा कर लेते हैं, जैसे फ़ाइलें बंद करना, डेटाबेस लेनदेन पूरा करना और फ़ाइल सिस्टम को साफ़-साफ़ अनमाउंट करना। आप अभी भी प्रतीक्षा को हटा सकते हैं और तेजी से शटडाउन कर सकते हैं, लेकिन ऐसा करने से हालिया लेखन या लेनदेन खोने, डेटाबेस या जर्नल फ़ाइलों को दूषित करने, या माउंटेड ड्राइव को अस्थिर स्थिति में छोड़ने का जोखिम भी बढ़ जाता है। डिफ़ॉल्ट टाइमआउट को कम करना
<पी> 90 सेकंड की डिफ़ॉल्ट प्रतीक्षा कई लिनक्स उपयोगकर्ताओं के लिए संतुलन बनाती है, विशेष रूप से पुराने हार्डवेयर का उपयोग करने वालों के लिए, क्योंकि यह अधिकांश सेवाओं के लिए अपनी सफाई दिनचर्या को पूरा करने के लिए पर्याप्त समय है। हालाँकि, आधुनिक लैपटॉप या डेस्कटॉप सिस्टम चलाने वाले उपयोगकर्ताओं के लिए, 90 सेकंड अत्यधिक लग सकते हैं। <पी> कारण जो भी हो, आप सिस्टम कॉन्फ़िगरेशन फ़ाइल में बदलाव कर सकते हैं और सिस्टमडी को अधूरी सेवाओं को उनके कार्यों को पूरा करने के लिए विशिष्ट संख्या में सेकंड देने के लिए कहकर टाइमआउट कम कर सकते हैं। <पी> आरंभ करने के लिए, अपना टर्मिनल लॉन्च करें और सिस्टम कॉन्फ़िगरेशन फ़ाइल को संपादित करने के लिए अपने पसंदीदा टेक्स्ट एडिटर का उपयोग करें: sudo nano /etc/systemd/system.conf
<पी> इसके बाद, टाइमआउट वेरिएबल का पता लगाएं। आपको बहुत सारे टेक्स्ट दिखाई देंगे, जो आपके सिस्टम के लिए वैश्विक सेटिंग्स का प्रतिनिधित्व करते हैं। #DefaultTimeoutStopSec=90s के समान एक पंक्ति खोजें . पंक्ति के आरंभ में हैश चिह्न का अर्थ है कि उस पर टिप्पणी की गई है या उसे अक्षम कर दिया गया है। सिस्टम वर्तमान में अपने आंतरिक डिफ़ॉल्ट का उपयोग कर रहा है, जो 90 सेकंड का होता है। <पी> मान को संशोधित करने के लिए, पहले लाइन को सक्रिय करने के लिए हैश प्रतीक को हटा दें, फिर अपनी पसंद के आधार पर 90 सेकंड को छोटी अवधि में बदलें। <पी> चेतावनी :इस मान को 0 पर सेट न करें। इसे 0 पर सेट करने से एक अनंत टाइमआउट बन जाता है, जिसका अर्थ है कि सिस्टम प्रक्रिया के रुकने का हमेशा इंतजार करेगा। यह हम जो चाहते हैं उसके विपरीत है। एक मध्य-श्रेणी मान (20-30s) कई उपयोगकर्ताओं के लिए एक व्यावहारिक समझौता है। <पी> एक बार जब आप काम पूरा कर लें, तो संपादक को सहेजें और बाहर निकलें। परिवर्तनों को लागू करने के लिए, आपको आमतौर पर रीबूट करने की आवश्यकता होती है। चूंकि समस्या शटडाउन के दौरान होती है, इसलिए आपको आखिरी बार लंबा इंतजार करना पड़ सकता है। अगले बूट के बाद, नई दूसरी सीमा प्रभावी होगी। <पी> ध्यान दें :कुछ मामलों में, आपको #DefaultDeviceTimeoutSec=90s को सक्षम करने की आवश्यकता हो सकती है इसके काम करने के लिए भी. जब टाइमआउट किसी समस्या का संकेत दे सकता है
<पी> ज्यादातर मामलों में, स्टॉप जॉब टाइमआउट सामान्य व्यवहार है। हालाँकि, यह कभी-कभी किसी अंतर्निहित समस्या की ओर इशारा कर सकता है, खासकर यदि एक ही सेवा बार-बार बंद होने में देरी करती है। हो सकता है कि नेटवर्क माउंट पहुंच से बाहर हो गया हो, डेमॉन गलत तरीके से कॉन्फ़िगर किया गया हो, या कोई सेवा शटडाउन सिग्नलों पर ठीक से प्रतिक्रिया न दे रही हो। <पी> यदि आप देखते हैं कि शटडाउन में सेकंड के बजाय मिनट लग रहे हैं, या हर बार एक ही सेवा का समय समाप्त हो रहा है, तो यह जांच के लायक है। कभी-कभार होने वाली देरी आमतौर पर हानिरहित होती है, लेकिन लगातार होने वाली देरी से पता चलता है कि किसी चीज़ पर ध्यान देने की ज़रूरत है। <पी> देरी का कारण बनने वाली सेवा की पहचान करने के लिए, धीमे शटडाउन से रीबूट करने के बाद लॉग की जाँच करें: journalctl -b -1 -e
<पी> यह कमांड पिछले बूट से लॉग प्रदर्शित करता है और अंत तक जाता है। आप चेतावनियों, टाइमआउट संदेशों, या सेवाओं को देखने के लिए ऊपर स्क्रॉल कर सकते हैं जिन्हें सिस्टम ने जबरन बंद कर दिया है। <पी> इसके अलावा, आप चेतावनी स्तर के संदेशों को देखकर भी चीजों को सीमित कर सकते हैं: journalctl -b -1 -p warning
<पी> एक अन्य उपयोगी जाँच इस Systemd विश्लेषण कमांड को चलाना है: systemd-analyze blame
<पी> हालाँकि यह कमांड स्टार्टअप समय पर केंद्रित है, लेकिन जो सेवाएँ धीमी गति से शुरू होती हैं वे अक्सर शटडाउन के दौरान समान व्यवहार करती हैं। कुछ अन्य सामान्य सेवाएँ जो काम रोकने के संदेशों को ट्रिगर करती हैं उनमें शामिल हैं: - नेटवर्क सेवाएँ
- दूरस्थ फ़ाइल सिस्टम जैसे NFS या SMB
- डेटाबेस सर्वर
- कंटेनर और वर्चुअल मशीन प्रबंधक
- बाहरी ड्राइव, और ऑटोमाउंट इकाइयाँ
<पी> यदि कनेक्शन अस्थिर है या अब उपलब्ध नहीं है तो नेटवर्क-आधारित माउंट में विशेष रूप से देरी होने की संभावना होती है। साथ ही, शटडाउन टाइमआउट को कम करने से शटडाउन तेजी से महसूस हो सकता है, लेकिन यह अंतर्निहित समस्या को ठीक नहीं करता है। यदि कोई सेवा लगातार बंद होने में देरी करती है, तो मूल कारण का समाधान करने से बेहतर दीर्घकालिक परिणाम मिलते हैं। अंतिम विचार
<पी> लिनक्स आपको अपने सिस्टम पर उच्च स्तर का नियंत्रण देता है, जिसमें यह भी शामिल है कि यह कितनी देर तक जिद्दी सेवाओं के बंद होने का इंतजार करता है। आप शटडाउन और बूट समय दोनों को बेहतर बनाने के लिए पृष्ठभूमि एप्लिकेशन को भी प्रबंधित कर सकते हैं और अनावश्यक सेवाओं को अक्षम कर सकते हैं।