सीएलआई बढ़ते बनाम जीयूआई बढ़ते


21

उबंटू 12.10 पर, जब मैं एक हार्ड ड्राइव माउंट करना चाहता हूं, तो मैं बस अनमाउंट ड्राइव पर क्लिक कर सकता हूं और सब कुछ ठीक काम करता है (द्वारा) /media/username/partitionlabel )।

मूल रूप से, मैं करना चाहूंगा ठीक यही कि कमांड लाइन के माध्यम से (एक स्क्रिप्ट के लिए जो मैं काम कर रहा हूं)।

जब से मैं बूट पर नहीं उतरना चाहता, fstab प्रश्न से बाहर है (दाएं?)।

जब मैं सीएलआई पर माउंट का उपयोग करता हूं, तो मुझे एक माउंटपॉइंट (जिसमें पहले से बनाए गए माउंटपॉइंट की आवश्यकता होती है, को भी निर्दिष्ट करने की आवश्यकता है; साथ ही, मुझे अनुमतियों और व्हाट्सएप का भी ध्यान रखना होगा) - जो मुझे समझ में नहीं आता है कि जीयूआई सभी को कहां ले जाता है इसके infos से? माउंटपॉइंट विभाजन के लेबल पर निर्भर करता है, लेकिन ऐसी निर्देशिका बढ़ते से पहले मौजूद नहीं है। इसके अलावा, जीयूआई तरीका उपयोगकर्ता को रूट नहीं होने के बारे में बहुत अधिक परवाह नहीं करता है।

क्या सीएलआई के माध्यम से माउंट करने के लिए एक "आसान" तरीका है, जैसे कि यह जीयूआई पर एक अनमाउंट ड्राइव पर क्लिक करके करता है?

जवाबों:


16

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

यह एक प्रदान करता है डायनामिक माउंट , जहां ड्राइव ऑन-द-फ्लाई के लिए माउंट पॉइंट बनाया जाता है, और जब ड्राइव अनमाउंट हो जाता है, तो माउंट पॉइंट चला जाता है।

man 1 udisksइस आदेश का उपयोग करने के तरीके के विवरण के लिए देखें (या तो मैन्युअल रूप से, या स्क्रिप्ट / एप्लिकेशन से कॉल किया जाता है)। कैसे udisksकाम करता है, इसके बारे में अधिक जानने के लिए देखेंman 7 udisks

डिवाइस को माउंट करने के लिए udisks, आपको डिवाइस के लिए एक मान्य डिवाइस नाम निर्दिष्ट करना होगा । डिवाइस का वॉल्यूम नाम निर्दिष्ट करने से काम नहीं चलेगा। तो, आप udisksइस तरह का उपयोग कर सकते हैं :

udisks --mount /dev/sdb1

जब udisksकमांड-लाइन से मैन्युअल रूप से उपयोग किया जाता है, तो आप किसी डिवाइस में बस प्लग-इन करना सबसे अच्छा हो सकता है, फिर dmesg | tailउसके बाद नए संलग्न डिवाइस के डिवाइस का नाम खोजने के लिए शीघ्र ही (देखें man dmesgऔर man tail) चलाएं ।

यह एक स्क्रिप्ट लिखने का सबसे अच्छा तरीका नहीं हो सकता है, जो कि उपकरणों के साथ माउंट करता है udisks। मुझे नहीं पता कि आपको यह कैसे करना चाहिए, और यह जानना मुश्किल होगा क्योंकि आपने हमें ठीक से नहीं बताया है कि आप इस स्क्रिप्ट को क्या करना चाहते हैं और जब आप चाहते हैं कि यह डिवाइस माउंट करें।


बहुत बहुत धन्यवाद - udisksठीक वही है जिसकी मुझे तलाश थी! जो भी कारण के लिए, मैं "माउंट फेल: नॉट एबॉर्गेड" हो रहा हूं जब इसे माध्यम से चला रहा हूं ssh; अगर मैं अपनी किस्मत को आगे नहीं बढ़ा रहा हूं, तो पॉइंटर्स की सराहना की जाएगी कि इसे कैसे ठीक किया जाए। ^ ^
निकोपिसला

2
@NicolaApicella आप इसे कैसे चला रहे हैं? यदि आप इसे एक दूरस्थ सत्र (SSH सहित) या एक क्रॉस्टैब से चलाने का प्रयास करते हैं, तो आपको एक अधिकृत संदेश नहीं मिलेगा ; डिफ़ॉल्ट रूप से गैर-रूट उपयोगकर्ता केवल udisksस्थानीय इंटरएक्टिव लॉगिन से संस्करणों को माउंट कर सकते हैं । (वे अभी भी एक स्थानीय इंटरैक्टिव लॉगिन से एक स्क्रिप्ट चला सकते हैं udisks, जो उपयोग करता है , हालांकि।)
एलियाह कगन

हाँ, क्षमा करें, बस मेरी पिछली टिप्पणी को देखा (और संपादित): मैं वास्तव में इसे से चला रहा हूं ssh। (और वर्तमान में एक ठीक कर रहे हैं।)
निकेपिसेला

6

चूँकि मैं बूट पर नहीं उतरना चाहता, fstab प्रश्न से बाहर है (दाएं?)।

नहीं। noautoकीवर्ड इसे बूट समय पर बढ़ते को सक्षम बनाता है।

क्या सीएलआई के माध्यम से माउंट करने के लिए एक "आसान" तरीका है, जैसे कि यह जीयूआई पर एक अनमाउंट ड्राइव पर क्लिक करके करता है?

सबसे आसान यह /etc/fstabसाथ जोड़ने noautoऔर उपयोग करने के लिए होगा ...

mount /dir

इसमें एक माउंटपॉइंट के लिए माउंट जांच होगी और यदि नहीं मिली है तो डिवाइस के लिए /etc/fstab/dirहालांकि मौजूद रहने की जरूरत है।

यदि या तो डिवाइस या UUID प्रदान किए गए हैं तो /etc/fstabजांच नहीं की गई है। इस तरह ...

mount /dev/sda1 /media/directory

या उपयोग udisks (मैं एलियाह को संभालने दूंगा> :-))


माउंट आम तौर पर केवल सुपर उपयोगकर्ता है।

उदाहरण के विकल्प:

  • rw,noauto,user इसे पढ़े + लिखें लेकिन बूट पर नहीं और आप इसे उपयोगकर्ता के रूप में कर सकते हैं।

  • आप /etc/fstabफ़ाइलों के लिए किसी उपयोगकर्ता के लिए अनुमतियाँ भी जोड़ सकते हैं । आप उसके umaskलिए उपयोग कर सकते हैं ।

  • umask = 0444: हर कोई पढ़ता है, कोई लिखता है, कोई अमल नहीं करता है।

  • umask = 0333: सभी लोग पढ़ते हैं, निष्पादित करते हैं।
  • umask = 0338: स्वामी, समूह पढ़ा और निष्पादित; दूसरों, कुछ भी नहीं

ठीक है, मैं शायद आगे जाऊंगा और कोशिश करूंगा, क्योंकि यह वैसे भी "ऐसा करने का तरीका" प्रतीत होता है। :-) तो मुझे लगता है कि मुझे वैसे भी एक माउंटपॉइंट-निर्देशिका (सही अधिकारों के साथ) बनानी होगी। ;-)
निकारापेला

@ रिनविंड क्या कोई गैर-रूट उपयोगकर्ता डिवाइस को माउंट करने में सक्षम होगा?
एलियाह कगन

1
@EliahKagan हाँ, यदि आप fstab (यूआईडी, उपयोगकर्ता, ...) में उपयुक्त विकल्प सेट करते हैं।
निकैपिसला

@NicolaApicella मैं उम्मीद कर रहा हूं कि इस उत्तर को उस बारे में जानकारी शामिल करने के लिए विस्तारित किया जा सकता है। :)
एलियाह कगन

@ नीकिकेला वह मेरे चारों ओर बॉस करना पसंद करती है: =)
रिनविंड

3

टिप्पणियों में से एक में, आपने कहा:

जो भी कारण के लिए, मैं ssh के माध्यम से इसे चलाते समय "माउंट फेल: नॉट एगाउटेड" हो रहा हूं

मैं के pmountबजाय का उपयोग करेंudisks । यह ssh पर काम करता है।

अगर मुझे सही ढंग से याद है, तो यह वाक्य रचना / आदि है जिसका मैं इसके साथ उपयोग करता हूं - इस बिंदु पर अधिकांश मेरा उपनाम के पीछे छिपा है:

pmount /dev/sdb1 my_usb
ls /media/my_usb/
eject /media/my_usb

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