आलसी umount या लिनक्स में एक व्यस्त डिस्क को अनमाउंट करना


19

मैंने पढ़ा है कि एक डिस्क को um ountount ’करना संभव है जो अन्यथा 'आलसी’ विकल्प का उपयोग करके व्यस्त है। इसके बारे में कहने के लिए मैनपेज में यह है:

umount - फ़ाइल सिस्टम को अनमाउंट करें

-एल आलसी अनमाउंट फाइलसिस्टम पदानुक्रम से फाइल सिस्टम को अलग करें, और फाइल सिस्टम के सभी संदर्भों को जल्द से जल्द साफ करें क्योंकि यह अब व्यस्त नहीं है। यह विकल्प "व्यस्त" फाइल सिस्टम को अनमाउंट करने की अनुमति देता है। (कर्नेल 2.4.11 या बाद के संस्करण की आवश्यकता है।)

लेकिन उसमें क्या बात होगी? मैंने विचार किया कि हम विभाजन को क्यों समाप्त करते हैं:

  1. हार्डवेयर निकालने के लिए
  2. फाइलसिस्टम पर संचालन करने के लिए जो माउंट किए जाने के दौरान असुरक्षित होगा

या तो इन मामलों में, सभी 'आलसी' अनमाउंट कार्य करता है IMHO यह निर्धारित करने के लिए और अधिक कठिन है कि क्या डिस्क वास्तव में खराब हो गई है और आप वास्तव में इन कार्यों के साथ आगे बढ़ सकते हैं। umount -lअनुभवहीन उपयोगकर्ताओं के लिए ऐसा लगता है कि उन्होंने कुछ हासिल नहीं किया है।

आप एक आलसी का उपयोग क्यों करेंगे?

जवाबों:


10

क्योंकि आप आलसी हैं - डिस्क के संचालन के बाद आप अनमाउंट करना चाहते हैं।

यहाँ एक प्रशंसनीय परिदृश्य है:

आप rsyncअपना बैकअप निष्पादित करने और दूर जाने के लिए उपयोग कर रहे हैं । आप umount -lड्राइव कर सकते हैं और एक बार यह कॉपी करने और सिंक करने के बाद, यह अनमाउंट करता है, ताकि जब आप ब्रेक के बाद वापस आएं (आपको पता हो कि बैकअप से अधिक समय लगेगा) तो आप कीबोर्ड के साथ फ़ेल होने के बजाय ड्राइव को अनप्लग कर सकते हैं ।


यदि आप आलसी थे, तो निश्चित रूप से आप तर्क का उपयोग न करके अधिक समय बचाना चाहेंगे, क्योंकि एक बार जब आप वापस मिल गए तो आपको पता था कि आप इसे तुरंत समाप्त कर सकते हैं अब बैकअप समाप्त हो गया है? या पोस्ट-बैकअप संचालन के ड्राइव भाग को विघटित करें?
deed02392

इसे इस तरह से सोचें: डिस्क अब व्यस्त नहीं है - इसे अब अनमाउंट करें। यह अब और नहीं है, इसलिए इसे और कुछ नहीं लिखा जा सकता है। यह "जब आप कर सकते हैं" तब करें जब तक आप बाहर न करें।
ब्रैम


5

यह वास्तव में प्रशासनिक कार्यों में अनुवर्ती कार्यों को करने के लिए अधिक समय प्राप्त करने के लिए लागू किया गया है।

यदि आगे के कार्य, इस एक के स्वतंत्र पाइपलाइन में इंतजार कर रहे हैं, तो आप आलसी-अनमाउंट कर सकते हैं और बैच में दूसरों के साथ आगे बढ़ सकते हैं।

उदाहरण : टास्क 1 और टास्क 2 दो प्रशासनिक कार्य हैं जो बैक टू बैक निर्धारित हैं।

कार्य 1 दैनिक बैकअप

यह एक प्रोजेक्ट विभाजन से बड़ी संख्या में फ़ाइलों की एक बैकअप पार्टीशन, / mnt / backupProj, की प्रतिलिपि बनाता है, जो मक्खी पर चलाई जाएगी और इस कार्य के अंत में अनमाउंट की जाएगी। कॉपी करने में महत्वपूर्ण समय लगता है।

टास्क 2 अद्यतन एसक्यूएल-विचार

एक समर्पित सर्वर पर डेटाबेस दृश्य अद्यतन की एक श्रृंखला करता है।

टास्क 2 स्पष्ट रूप से टास्क 1 से पूरी तरह से स्वतंत्र है, इसलिए हम बैकअप कार्य को पूरा करने के लिए इंतजार किए बिना आलसी-अनमाउंट / mnt / backupProj कर सकते हैं।


1
क्या आप एक उदाहरण प्रदान कर सकते हैं? किस स्थिति में यह 'लाभ / समय बचाएगा'?
deed02392

4

मैं उन मामलों में आलसी ऑमाउंट का उपयोग करता हूं जहां यह स्पष्ट रूप से विभिन्न कारणों (जैसे कि एनएफ़एस सर्वर डाउन) के लिए अटका हुआ था, यह भी कि जब मुझे माउंट द्वारा माउंट की गई मूल सामग्री को देखने की आवश्यकता होती है। दोनों मामलों में माउंट व्यस्त है। मुझे लगता है कि अन्य किनारे मामले हैं लेकिन ये 2 सबसे आम कारण हैं जो मैंने विकल्प का इस्तेमाल किया।


--forceNFS मामले के लिए अनुशंसा करता है।
टॉम हेल

3

एक बाँध माउंट पर विचार करें जैसा कि आप देख सकते हैं जब साथ काम करते हैं chroot:

mount --rbind /proc /mnt/proc
# do stuff
umount /mnt/proc

यदि आपके पास आपके सिस्टम पर एक डेमॉन है जो लगातार पूछताछ करता है /proc(मैं आपको देख रहा हूं ksysguardd), तो आप असमर्थ होंगे umount /mnt/proc। आलसी आपको umountइस मामले में आने देगा ।


--forceइसके बजाय यहाँ का उपयोग क्यों नहीं ?
टॉम हेल

2

हार्डवेयर की विफलता के कारण यूएसबी-ड्राइव कभी-कभी बंद हो जाते हैं। यदि आप शारीरिक रूप से ड्राइव को फिर से कनेक्ट करते हैं, तो भी आपको एक और डिवाइस-नाम मिलता है। पुराने डिवाइस-नाम को सामान्य रूप से अनमाउंट नहीं किया जा सकता है। राशि -l ने मृत प्रविष्टि को गायब करने के लिए मजबूर किया।


1

मान लें कि आपको वास्तव में उस वॉल्यूम को बदलने की आवश्यकता है जिस पर एक सॉफ्टवेयर एक लॉग लिख रहा है, उदाहरण के लिए एक वेब सर्वर, लेकिन इसमें बहुत अधिक ट्रैफ़िक है और इसे ऑपरेशन के लिए बंद नहीं किया जा सकता है और न ही लॉगिंग पथ को बदला जा सकता है।

आलसी अनमाउंट के साथ, आप सुरक्षित रूप से वॉल्यूम को अनमाउंट कर सकते हैं जबकि सॉफ्टवेयर अभी भी चल रहा है, उसी माउंटपॉइंट पर एक और वॉल्यूम माउंट करें और फ़ाइलों को फिर से खोलने के लिए सॉफ़्टवेयर को कमांड दें।

आदर्श रूप से, चूंकि आपको सॉफ़्टवेयर बंद करने की आवश्यकता नहीं थी, इसलिए कोई अनुरोध नहीं खोए गए थे और अनिवार्य रूप से कोई लॉग एंट्री भी नहीं खोई गई थी, क्योंकि वे अभी भी पुराने माउंट पर लिखे जा रहे थे जब तक कि फाइलें फिर से नहीं खोली गईं (सॉफ्टवेयर को फिर से खोलना कितना अच्छा है फ़ाइलें सॉफ्टवेयर पर निर्भर है)।

मैनपेज को पैराफ्रास्टिंग करते हुए, इसका मतलब है कि अगर वॉल्यूम में लेज़र के खुलने के बाद भी फाइलें खुली हैं, तो वास्तव में यह माउंटेड रहता है, लेकिन फाइल सिस्टम के माध्यम से बस एक्सेस नहीं किया जा सकता है और अंतिम ओपन फाइल के बंद होने पर यह वास्तव में अनमाउंट है।


1
धन्यवाद यह एक उपयोगी अनुप्रयोग की तरह लगता है। विल lsofवर्ष माउंटप्वाइंट पर खुली फ़ाइलों को दिखाने? इसके अलावा, मुझे आश्चर्य है कि यह पुरानी मात्रा और नई पर खुली फाइलों को कैसे अलग करेगा?
deed02392

0

मैं अपने संवेदनशील डेटा के भाग को एन्क्रिप्ट करने के लिए एनकॉफ़ का उपयोग करता हूं।

जब डिस्क माउंट किया जाता है, तो नॉटिलस पूर्वावलोकन बनाते हैं (मुझे लगता है, मुझे यकीन नहीं है), और फ़ाइलों को लॉक करें। जब मैं इसे अनमाउंट करना चाहता हूं, तो यह कहता है कि यह एक अन्य प्रक्रिया से बंद है।

आलसी इसे unmounting द्वारा, फ़ोल्डर मेरे पदानुक्रम से गायब हो जाता है, और छिपा हुआ है। और जब पृष्ठभूमि प्रक्रिया समाप्त हो जाती है, तो यह सफलतापूर्वक अनमाउंट हो जाता है।

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