पहुंच नेटवर्क सांबा पाई क्लाइंट से साझा करें


13

मैं अपने पीसी का उपयोग आरपीआई पर फ़ाइलों को एक्सेस करने के लिए कर रहा हूं, आरपीआई पर सांबा सर्वर का उपयोग कर रहा हूं।

लेकिन, क्या कोई ऐसा तरीका है जिससे मैं पाई पर सांबा कनेक्शन खोल सकता हूं? आरपीआई पर विंडोज पीसी सांबा फाइल ब्राउज़ करने की तरह?


1
ftp ज्यादा तेज होगा
rav_kr

1
हां मुझे पता है, लेकिन मेरे सभी विंडोज़ पीसी पर FTP सर्वर स्थापित करने के लिए यह थकाऊ है
Snazzy Sanoj

2
आप एक सांबा क्लाइंट चाहते हैं । मुझे यकीन है कि आप ऐसे ऑनलाइन के कई स्पष्टीकरण पाएंगे यदि आप " लिनक्स सांबा क्लाइंट" की खोज करते हैं, हालांकि निश्चित रूप से उनमें से कुछ वास्तव में एक क्लाइंट बॉक्स का उपयोग करने के बारे में होगा बजाय अन्य रास्ते के बजाय एक लिनक्स बॉक्स पर। मेरा मानना ​​है कि इसके लिए सीएलआई की उपयोगिता है smbclient
गोल्डीलॉक्स

@goldilocks धन्यवाद, लेकिन क्या सांबा को खोलने के लिए डिफ़ॉल्ट फ़ाइल प्रबंधक के लिए कोई समाधान है? :)
स्नेज़ी सैन

1
LXDE में फ़ाइल प्रबंधक (रास्पियन पर डिफ़ॉल्ट डेस्कटॉप वातावरण) "pacmanfm" है, इसलिए यदि आप "pacmanfm samba" की खोज करते हैं, तो आपको सामान का एक गुच्छा ढूंढना चाहिए, उदाहरण के लिए, askubuntu.com/q/249678/239729 मैं सांबा के लिए सुझाव देता हूं। -ऑन-लाइनक्स सामान आम तौर पर आप यू एंड एल पर शुरू करते हैं ।
गोल्डीलॉक्स

जवाबों:


21

पहले कुछ पैकेज स्थापित करें:

apt-get install  samba-common smbclient samba-common-bin smbclient  cifs-utils

फिर, एक स्थानीय निर्देशिका बनाएं और दूरस्थ हिस्से को माउंट करें:

mkdir /mnt/abc
mount -t cifs //server/share /mnt/abc

जहाँ serverआपके विंडोज़ कंप्यूटर का नाम (dns या netbios) है और shareआपकी विंडोज़ साझा निर्देशिका है।

आपके द्वारा अपने विंडोज़ शेयर को दिए जाने वाले एक्सेस के आधार पर क्रेडेंशियल की आवश्यकता होती है: यदि आप अपना हिस्सा 'हर कोई' पढ़ते हैं (और लिखते हैं) तो एक्सेस की आवश्यकता नहीं है, अन्यथा आपको माउंट समय पर क्रेडेंशियल्स जोड़ना होगा:

mount -t cifs //server/share /mnt/abc -o user=user,pass=password,dom=domain

अपने स्वयं के क्रेडेंशियल्स के साथ बदलें।
जब बस हिस्सा खत्म हो गया:

umount /mnt/abc

+1 यह एक मॉडेम / राउटर के यूएसबी पोर्ट से कनेक्ट किए गए एक साझा यूएसबी ड्राइव के लिए काम करता है। अगर आपको '-o' से पहले कुछ और डिबगिंग ऐड '--verbose' की जरूरत है
Denja

मेरे पास अपनी क्रेडेंशियल्स के साथ यह त्रुटि है: डिवाइस या संसाधन व्यस्त। Mount.cifs का संदर्भ लें (8) मैनुअल पेज (जैसे आदमी Mount.cifs)
Axel Briche

मुझे हर बार ऐसा करना है। यह उत्तर बहुत स्पष्ट और संक्षिप्त है। धन्यवाद :)
जोबो

sudo mount -t cifs -o username=guest,password=,vers=1.0 //192.168.0.1/sda1 /home/pi/router मुझे अपने रूटर्स smb शेयर
हर्षिल लोधी

4

यदि सांबा शेयर को लॉगिन करने के लिए किसी क्रेडेंशियल की आवश्यकता नहीं है और आप अपनी रास्पबेरी पाई शुरू करने पर शेयर को माउंट करना चाहते हैं तो रूट के रूप में fstab फ़ाइल को संपादित करें

sudo nano /etc/fstab

और निम्न पंक्ति जोड़ें

//server/share  /mnt/abc  cifs  guest  0  0

बंद करें और fstab फ़ाइल में परिवर्तन सहेजें

जाँच करें कि सब कुछ उसी तरह से जुड़ता है जैसा उसे होना चाहिए

sudo mount -a

अगर आपके सांबा शेयर को पासवर्ड की जरूरत है, तो आप अपने fstab प्रविष्टि में निम्न का उपयोग कर कनेक्ट कर सकते हैं।

//server/share  /mnt/abc cifs username=username,password=password  0  0

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

एक बेहतर समाधान एक क्रेडेंशियल फ़ाइल का उपयोग करना है।

nano ~/.smbcredentials

फिर फ़ाइल में अपना उपयोगकर्ता नाम और पासवर्ड दर्ज करें

username=username
password=password

फ़ाइल को सहेजें और इसकी अनुमतियों को बदलें ताकि यह दूसरों द्वारा पठनीय न हो।

chmod 600 ~/.smbcredentials

तो अपने samba शेयर को जोड़ने के लिए fstab को रूट के रूप में संपादित करें

//server/share  /mnt/abc cifs credentials=/home/pi/.smbcredentials  0  0

फिर से, के साथ परीक्षण

sudo mount -a

और यदि कोई त्रुटि नहीं है, तो जब आप रिबूट करेंगे तो यह स्वचालित रूप से शेयर को माउंट करेगा।

बस कुछ जोड़ने के लिए मैं मंचों पर बहुत नोटिस करता हूं जब कोई एक उचित प्रश्न पूछता है। ऐसा क्यों है कि लोग "क्यों XXXxxx, yyyyy एक बेहतर है" की तर्ज पर कुछ के साथ प्रतिक्रिया करते हैं। Thats नहीं वे क्या पूछा, और यह भी उपयोगी नहीं है।


4

मेरा मुद्दा भी ऐसा ही था। मेरा लक्ष्य dd-wrt सांबा शेयर था।

मेरी समस्या: वैसे भी ( fstabआरपीआई 3 से) इसे माउंट करने में असमर्थ ।

मेरे पास "अवैध तर्क त्रुटि 22" के लिए "..cifs के संदर्भ में पासवर्ड पास करने में सक्षम नहीं होने" से त्रुटियां थीं।

मैं इस पोस्ट के पार आया, सांबा माउंट को माउंट नहीं कर सकता: माउंट त्रुटि (22) , और यह उत्तर बताता है कि समाधान vers=1.0विकल्पों पर जोड़ना है mount

मुझे उम्मीद है कि उससे आप मदद मिलती है।


श्लोक = 1.0 ने भी मेरे लिए समस्या हल कर दी। sudo माउंट -t cifs // [दूरस्थ आईपी पता] / डाउनलोड / mnt / abc -o vers = 1.0, उपयोगकर्ता = [उपयोगकर्ता]
tridy

मेरे लिए छद्म = 1.0 कार्य का उपयोग करते हुए, सुडो माउंट -ओ वर्श = 1.0 // [NAS_IP] / nas / media / pi / nas
इलेक्ट्रॉन

0

यदि, किसी शेयर को ऑटो-माउंट करने की कोशिश करने के बाद, आप किसी तरह परिदृश्य में चलते हैं जहां पाई अब बूट नहीं करेगा, आपको "इमरजेंसी मोड" में छोड़ देता है और / या आपको बताता है कि रूट खाता लॉक है, तो आप इसे फॉलो कर सकते हैं यहां स्थित निर्देश: रास्पबेरी पाई बूट मुद्दा - रूट खाता बंद!

भविष्य के लिए लिंक किए गए चरणों का सारांश:

  1. पाई से अपने एसडी कार्ड को पुनः प्राप्त करें और एडेप्टर का उपयोग करके कार्ड को अपने पीसी, मैक या लिनक्स पर माउंट करें।
  2. आपको /bootअपने एसडी कार्ड का विभाजन देखने में सक्षम होना चाहिए ।
  3. फ़ाइल का पता लगाएँ cmdline.txtऔर लाइन के अंत में निम्नलिखित जोड़ें init=/bin/sh नोट: एक नई लाइन न बनाएं, वर्तमान लाइन के अंत में बस ऊपर जोड़ें।
  4. एसडी कार्ड को अपने पाई पर लोड करें और बूट करें।
  5. अब आपको रूट शेल प्रॉम्प्ट मिलना चाहिए। यहां से आप परिवर्तनों को पूर्ववत् /etc/fstabया जो कुछ भी आपके सिस्टम को तोड़ सकते हैं, को पूर्ववत कर सकते हैं ।
  6. कुछ मामलों में आप अपने परिवर्तनों को सहेज नहीं पाएंगे और सिस्टम एक रीड ओनली फाइल सिस्टम की शिकायत करेगा। अगर आपको वह कदम अगले कदम पर मिलता है

रास्पबेरी पाई एसडी कार्ड में दो मुख्य विभाजन होंगे, क्योंकि हम विभाजन तालिका को सीधे नहीं पढ़ सकते हैं, आपको अपने रूट और बूट विभाजन के लिए डिवाइस को मैन्युअल रूप से ढूंढना होगा। आप के लिए जा रहा करके ऐसा कर सकते /devनिर्देशिका और आप के लिए कुछ इसी तरह देखना चाहिए mmcblk0p1और mmcblk0p2। दूसरा डिवाइस mmcblk0p2आपका रूट पार्टीशन होगा। आपको इसे रीड राइट परमिशन के साथ रिमूव करना होगा:

mount -o remount,rw /dev/mmcblk0p2 /

यह किसी अन्य कंप्यूटर (मैक / लिनक्स / विंडोज) पर एसडी कार्ड को माउंट करके और cmdline.txtफ़ाइल को संपादित करके सबसे आसानी से पूरा किया जाएगा ।

मैंने अपने वातावरण को एक खराब fstab प्रविष्टि के साथ बदल दिया था और इन निर्देशों का पालन करने से मुझे उस त्रुटि को कम करने की अनुमति मिली।

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