लिनक्स में कमांड लाइन का उपयोग करके बाहरी हार्ड ड्राइव, फ्लैश ड्राइव आदि को पावर करना


8

मैंने हमेशा सोचा था कि एक उपकरण को सुरक्षित रूप से हटाने के लिए जो माउंट किया गया था वह umountकमांड का उपयोग करने के लिए था और हाल ही में जब तक मैं उबंटू 12.04 एलटीएस पर स्विच करता हूं, मैंने देखा कि डिवाइस को सुरक्षित रूप से हटाने की क्षमता थी जिसने मेरी जिज्ञासा को मारा।

मैंने कई पोस्टों को खोदा और पाया कि umountजाहिरा तौर पर इसका मतलब यह नहीं है कि मैं डिवाइस को सुरक्षित रूप से हटा सकता हूं क्योंकि यह डिवाइस को पावर नहीं करता है। मुझे पता है कि वहाँ विकल्प है eject। अब इंटरनेट को खंगालने के बाद यह मेरी समझ है। संदर्भ में शामिल हैं:

मैं तो एक में आए लेख लेकिन पाया प्रक्रिया घुमावदार और मुझे लगता है कि मैं अंत में वेतन गंदगी मारा जब मैं आदेश में आए udisksजैसेudisks --unmount /dev/sdb1 && udisks --detach /dev/sdb

मुझे क्या भ्रमित करता है (एक तरफ से कि क्या umountवास्तव में इसका मतलब है कि डेटा हानि के बिना डिवाइस को निकालना सुरक्षित है और क्या मुझे syncइससे पहले कमांड का उपयोग करने की आवश्यकता है और साथ ही यह भी कि डिवाइस ने नीचे संचालित किया है जो सुरक्षित रूप से हटाने लगता है) मैं विरोध के रूप में के /dev/sdbबाद का उपयोग --detachकरने के लिए है/dev/sdb1


जवाबों:


6

/dev/sdbपूरी डिवाइस है। /dev/sdb1उस उपकरण पर एक विभाजन है।

जब आप इसे विभाजन के बिना एक डिस्क का उपयोग कर सकते हैं, तो यह असामान्य है (RAID सेटअपों के बाहर, लेकिन फिर आप RAID डिवाइस नोड्स पर फाइल सिस्टम बनाते हैं, भौतिक डिवाइस नोड्स नहीं)।
यह वास्तव में एक विभाजन को अलग करने (शारीरिक रूप से हटाने) का प्रयास करने के लिए समझ में नहीं आता है - आप पूरे डिवाइस को निकालना चाहते हैं (जिसमें कई विभाजन हो सकते हैं), न कि उस डिवाइस का केवल एक विभाजन।

विभाजन को अनमाउंट करने से फाइलसिस्टम सिंक्रनाइज़ हो जाएगा, इसलिए syncपहले कॉल unmountकरना आवश्यक नहीं है। डिवाइस पर
कॉल udisks --detachकरने से पता चलता है कि आपके पास उस डिवाइस पर कोई फाइलसिस्टम नहीं है (आपको यह सुनिश्चित करना चाहिए कि कॉल वास्तव में सफल हो), और एक "अर्दली शटडाउन" करेगा, जो हमेशा "प्लग को खींचने" दृष्टिकोण के लिए बेहतर है, परवाह किए बिना। चाहे वह विशेष उपकरण कुछ भी विशेष करता हो।


मुझे नहीं पता था कि सिर्फ / dev / sdb पूरे उपकरण का प्रतिनिधित्व करता है जिसे मैं मानता हूं कि सभी विभाजन का प्रतिनिधित्व करता है। क्या वो सही है? इसलिए मैं सिर्फ कमांड चला सकता हूं जैसे udisks --unmount /dev/sdb && udisks --detach /dev/sdbकि मैं सभी विभाजन को अनमाउंट करना चाहता हूं? कई विभाजन मौजूद होने पर सिर्फ एक पार्टीशन को अनमाउंट करने का मतलब है।
मूँगफली के दाने

आप यह भी कैसे सुनिश्चित करते हैं कि कॉल udisks --detachसफल हो?
मूँगफली के दाने

नहीं, अनमाउंटिंग /dev/sdbसे काम नहीं चलेगा। आपको प्रत्येक माउंट किए गए विभाजन को अनमाउंट करने और कमांड के आउटपुट को देखने / पार्स करने की आवश्यकता है।
चटाई

क्षमा करें, आउटपुट के आदेशों को देखने या पार्स करने से आपका क्या मतलब है? क्या मुझे प्रत्येक विभाजन को अनमाउंट नहीं करना चाहिए और फिर कमांड चलाना चाहिए udisks --detach /dev/sdb?
मूँगफली के दाने
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.