- आपको पता नहीं चल सकता है कि डिवाइस वास्तव में अनमाउंट है या नहीं
- "अनमाउंटेड" फाइलसिस्टम कुछ परिस्थितियों में सुलभ रहता है
- "अनमाउंटेड" फाइलसिस्टम कुछ परिस्थितियों में सुलभ नहीं है
सुरक्षा का एक गलत अर्थ है : ऐसा प्रतीत होता है कि फाइल सिस्टम अनमाउंट किया गया है, लेकिन वास्तव में इसे केवल फ़ाइल नामस्थान / उत्तराधिकार से छिपाया गया है।
- प्रक्रियाएं अभी भी खुले फ़ाइल विवरणकों के माध्यम से लिख सकती हैं
- नई या मौजूदा फ़ाइलों को संबंधित पथनाम के माध्यम से माउंटपॉइंट के अंदर एक कार्यशील निर्देशिका के साथ प्रक्रियाओं द्वारा लिखने के लिए खोला जा सकता है
इसका मतलब है कि यदि आप umount -l /media/hddअब /media/hdd/dir/file(पूर्ण पथनाम) का उपयोग नहीं कर पाएंगे, लेकिन अगर आपके पास कार्यशील निर्देशिका के साथ एक प्रक्रिया है, तो /media/hddयह अभी भी नई प्रक्रियाएं बनाने में सक्षम होगा जो पढ़ / लिख सकते हैं ./dir/file(सापेक्ष पथनाम)।
यदि आप डिवाइस को अनमाउंट करने का प्रयास करते हैं, तो आप एक भ्रमित संदेश देंगे:
# umount --force --all-targets /dev/sdb2
umount: /dev/sdb2: not mounted
इससे ऐसा लगता है कि डिवाइस अनवांटेड है, लेकिन डिस्क पर लिखने की प्रक्रिया अभी भी हो सकती है।
चूंकि विभिन्न गैर-स्पष्ट परिस्थितियां हैं, जो umount को ब्लॉक करने का कारण बन सकती हैं , फाइल सिस्टम अभी भी अनमाउंट नहीं किया जा सकता है, हालांकि lsof +f -- /dev/deviceकुछ भी नहीं दिखाता है।
आपको कभी पता नहीं चलेगा कि फाइलसिस्टम वास्तव में अनमाउंट है या नहीं। इसका पता लगाने का कोई तरीका नहीं है।
निकालने योग्य डिवाइस
यदि आप umount -lएक हटाने योग्य डिस्क करते हैं, तो आप लिम्बो-लैंड में हैं: आप यह सुनिश्चित नहीं कर सकते कि सभी लंबित डेटा डिस्क पर लिखे गए हैं।
सभी लेखन को पूरा करने और भविष्य के लेखन को रोकने केumount -l लिए एक के बाद आप सबसे अच्छा कर सकते हैं , लेकिन आप अभी भी गारंटी नहीं दे सकते हैं कि यह अनमाउंट किया गया है।
हटाने योग्य उपकरणों के साथ, यदि डिवाइस ठीक से अनमाउंट नहीं है, तो अजीब व्यवहार के परिणामस्वरूप अगली बार इसे प्लग इन किया जा सकता है:
डिवाइस को एक बढ़े हुए डिवाइस का नाम मिलेगा, अर्थात /dev/sdbबन जाएगा /dev/sdc। कर्नेल लॉग संदेश अभी भी संदर्भित कर /dev/sdbसकते हैं, हालांकि वह डिवाइस अब फ़ाइल के रूप में मौजूद नहीं है /dev। (इसका समाधान करने का एकमात्र तरीका मुझे पता है कि रिबूट करना है।)
btrfs भ्रष्टाचार परिणाम दे सकता है। btrfs को उम्मीद है कि किसी दिए गए UUID के साथ केवल एक फाइल सिस्टम एक समय में मौजूद है। कर्नेल अभी भी समान UUID को प्रेत डिवाइस और नए डिवाइस पर उपलब्ध देखता है। (मुझे अपने btrfs बैकअप HDD का पुनर्निर्माण करना पड़ा)।
systemd gotchas