माउंट। एनएफ़एफ़एस: बढ़ते समय सर्वर द्वारा उपयोग से वंचित


12

मेरे उबंटू सिस्टम पर, मेरे पास यह लाइन / etc / fstab में है:

myserver:/home/me /mnt/me nfs rsize=8192,wsize=8192,timeo=14,intr

जब मैं करता हूं

sudo mount -a

मुझे मिला:

mount.nfs: access denied by server while mounting myserver:/home/me

मैं इस समस्या का निदान कैसे कर सकता हूं? Nfs सर्वर भी Ubuntu है।

अतिरिक्त विवरण: मैं किसी समस्या के साथ एक ही नेटवर्क पर अन्य उबंटू ग्राहकों से इस एनएफ़एस शेयर को माउंट करने में सक्षम हूं। हालाँकि, समस्याग्रस्त क्लाइंट इस बात में भिन्न है कि यह विंडोज़ सिस्टम पर वर्चुअलबॉक्स के अंदर चल रहा है। मैं समस्याग्रस्त क्लाइंट से "myserver" ठीक पिंग कर सकता हूं।

संपादित करें: "myserver" पर / etc / निर्यात:

/home/me *(rw,all_squash,async,no_subtree_check,anonuid=1000,anongid=1000)

"myserver" पर /etc/hosts.allow और /etc/hosts.deny दोनों सभी टिप्पणियां हैं। और ध्यान रखें, कि मैं एक ही नेटवर्क पर अन्य क्लाइंट से ठीक कनेक्ट कर सकता हूं।


क्या आपने दूरस्थ ubuntu nfs सर्वर पर लॉग फ़ाइलों को पूंछने की कोशिश की है? देखें कि क्या विंडोज़ बॉक्स पर वर्चुअल मशीन से माउंट करने का प्रयास किया जा रहा है।
पैट्रिक आर

कौन सी लॉग फ़ाइलें बिल्कुल?
जोएलफैन

क्या / var / log / संदेशों में कुछ दिखाई दे रहा है?
मैट सिमंस

जवाबों:


22

मिल गया!

लॉग में से एक में लाइन थी:

refused mount request from 192.168.1.108 for /home/me (/home/me): illegal port 64112

मैंने गुगली की और पाया कि चूंकि पोर्ट 1024 से अधिक है, इसलिए मुझे सर्वर पर / etc / निर्यात में संबंधित लाइन में "असुरक्षित" विकल्प जोड़ने की आवश्यकता थी। एक बार जब मैंने ऐसा किया (और Exportfs -r चलाया), क्लाइंट पर आर-आई ने काम किया।


3
जबकि यह काम करता है, अब कोई भी गैर-रूट उपयोगकर्ता एनएफएस के नए उदाहरण होने का दिखावा कर सकता है और आपकी सभी फाइलों तक पहुंच बना सकता है। किसी को पता है कि अगर सिर्फ इन उच्च बंदरगाह संख्याओं का उपयोग बंद करने के लिए nfs ग्राहक पाने के लिए एक रास्ता theres?
अर्ध

इसके लिए बहुत बहुत धन्यवाद, मेरी गांड बचाई। हॉग ऑफ़ गोगलिंग के बाद हार मानने को तैयार था। मैंने इसे लॉग में नहीं देखा क्योंकि मैं "nfs" के लिए तैयार था, लेकिन यह वास्तव में मेरा "आरोहित" लॉग है।
कोरी जे

1
@ जय, समय देने के लिए धन्यवाद मुझे पता है कि यह मदद की! आपकी टिप्पणी ने मुझे इस प्रश्न पर एक और नज़र डाल दी और मैंने देखा कि इसमें 12K से अधिक विचार हैं! तो शायद इसने अन्य लोगों की मदद की, लेकिन आप केवल एक ही हैं जिसने "धन्यवाद" कहा है! :)
जोएलफैन

10

यह सवाल इस बात से संबंधित है कि नेटवर्क आपके vm के लिए कैसे सेट है।

VirtualBox के साथ डिफ़ॉल्ट रूप से, आपके पास NAT नेटवर्क है। जिसके परिणामस्वरूप पोर्ट ट्रांसलेशन होता है

चरण दर चरण यह देता है:

  1. NFS क्लाइंट एक आरक्षित पोर्ट का उपयोग कर रहा है (<1024 ... जो केवल रूट द्वारा खोला जा सकता है -> सुरक्षित)
  2. वर्चुअलबॉक्स पोर्ट ट्रांसलेशन (NAT) -> क्लाइंट पोर्ट अब 1024 से अधिक है
  3. NFS सर्वर उस असुरक्षित पोर्ट के लिए कनेक्शन को मना कर देता है।

जैसा कि @JoelFan द्वारा उल्लेख किया गया है, एक फिक्स insecureसर्वर के लिए विकल्प सेट करना होगा । यह एक त्वरित सुधार है लेकिन ... असुरक्षित;)

मेरे लिए जो मामला तय किया गया था (सुरक्षित तरीके से) इस vm के लिए NAT से ब्रिज नेटवर्क में बदलना था । इस तरह, मेरे vm के पास स्वयं का IP पता है और कोई पोर्ट अनुवाद नहीं किया गया है।


2

लगता है कि क्या ... मेरे लिए, उसी त्रुटि का स्रोत मेरे NFS क्लाइंट और सर्वर के बीच एक संस्करण बेमेल था।

लॉग चुप थे जैसे कि कुछ भी नहीं हुआ, और केवल सर्वर साइड पर चलने वाले nfswatch ने मुझे स्थिति स्पष्ट करने में मदद की।

क्लाइंट साइड पर nfsver माउंट विकल्प जोड़कर समस्या का समाधान किया गया था:

server:/path   /mount/point   nfs   nfsvers=3   0 0

यह भी मेरी समस्या थी। mountपैकेज v2.17.2-9 के साथ डेबियन 6 (निचोड़) स्थापित। समाधान काम किया।
एलिस्टेयर इरविन

1

क्या आपने सत्यापित किया है कि नाम समाधान उस क्लाइंट के लिए सर्वर पर सही है जो कनेक्ट करने की कोशिश कर रहा है (और निर्यात फ़ाइल में सूचीबद्ध है)?


प्रश्न में मेरे संपादन देखें ... मैं सभी को अनुमति दे रहा हूं
जोएलफैन

0

फाइलों की जांच hosts.allowऔर hosts.denyऔर ग्राहक सही तरीके से दर्ज किया गया है। जब यह मदद नहीं करता है, तो कृपया अपनी निर्यात फ़ाइल पोस्ट करें।


प्रश्न में मेरे संपादन देखें
जोएलफैन

0

यदि यह अन्य लोगों की मदद करता है, तो मेरे पास एक Synology NAS है और NFS बिंदु ने वास्तव में पथ में एक और आइटम जोड़ा है।

मैं "xxx.xxx.xxx.xxx/folder" को माउंट करने की कोशिश कर रहा था क्योंकि यह विंडोज में है। लेकिन NFS के साथ उबंटू के लिए मुझे "xxx.xxx.xxx.xxx/volume1/folder" का उपयोग करना था।

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