एनएफएस या नेटवर्क फाइल सिस्टम एक वितरित फाइल सिस्टम प्रोटोकॉल हैमूल रूप से सन माइक्रोसिस्टम्स द्वारा बनाया गया। एनएफएस के माध्यम से, एक सिस्टम को एक नेटवर्क पर दूसरों के साथ निर्देशिकाओं और फ़ाइलों को साझा करने की अनुमति दी जा सकती है।
एनएफएस फ़ाइल साझाकरण में, रिमोट सिस्टम की जानकारी को उपयोगकर्ताओं और यहां तक कि कार्यक्रमों द्वारा एक्सेस किया जा सकता है जैसे कि वे किसी स्थानीय मशीन पर रहते थे।
NFS के क्लाइंट-सर्वर वातावरण में चल रही है जहां सर्वर क्लाइंट प्रमाणीकरण, प्राधिकरण और प्रबंधन के साथ-साथ एक विशिष्ट फ़ाइल सिस्टम के भीतर सभी साझा किए गए डेटा को प्रबंधित करने के लिए जिम्मेदार है।
प्राधिकरण होने पर, कोई भी ग्राहक साझा किए गए डेटा तक पहुंच प्राप्त कर सकता है जैसे कि यह उनके आंतरिक भंडारण पर मौजूद था।
अपने Ubuntu सिस्टम पर NFS सर्वर सेट करना बहुत सरल है। आपको केवल सर्वर और क्लाइंट मशीनों पर कुछ आवश्यक स्थापनाएं और कॉन्फ़िगरेशन करने की आवश्यकता है, और आप जाने के लिए अच्छे हैं।
इस लेख में, हम एक एनएफएस सर्वर और क्लाइंट को कॉन्फ़िगर करने के तरीके के बारे में चरण दर चरण बताएंगे जो उन्हें एक उबंटू सिस्टम से दूसरे में फाइल साझा करने की अनुमति देगा।
एनएफएस सर्वर को कॉन्फ़िगर करना
निर्देशिकाओं को साझा करने के लिए होस्ट सिस्टम को कॉन्फ़िगर करने के लिए, हमें एनएफएस कर्नेल सर्वर को स्थापित करना होगा और फिर उन निर्देशिकाओं को बनाना और निर्यात करना होगा जो हम चाहते हैं कि क्लाइंट सिस्टम एक्सेस करें।
अब हम Ctrl + Alt + T के साथ एक टर्मिनल खोलने जा रहे हैं और इसमें हम निम्नलिखित कमांड को निष्पादित करने जा रहे हैं:
sudo apt install nfs-kernel-server -y
एक बार इंस्टॉलेशन हो जाने के बाद, अब हम एक फोल्डर बनाने जा रहे हैं जिसे हम क्लाइंट सिस्टम के साथ साझा करना चाहते हैं, यह एक एक्सपोर्ट फोल्डर होगा।
इस उदाहरण में हम वर्तमान निर्देशिका में फ़ोल्डर बनाने जा रहे हैं जहां हम हैं, लेकिन आप उस मार्ग को चुन सकते हैं जो आपको सबसे अच्छा लगता है।
टर्मिनल में हम टाइप करेंगे:
sudo mkdir -p carpeta-compartida
चूंकि हम चाहते हैं कि सभी क्लाइंट डायरेक्टरी को एक्सेस करें, हम निम्न आदेशों के माध्यम से निर्यात फ़ोल्डर से प्रतिबंधात्मक अनुमतियों को हटा देंगे:
sudo chown nobody: nogroup carpeta-compartida sudo chmod 777 carpeta-compartida
यह महत्वपूर्ण है कि यदि यह किसी अन्य पथ में है, तो आप इसे ठीक करते हैं, क्योंकि यदि आप एक ही स्थान छोड़ते हैं, तो आप अपने सिस्टम पर निर्देशिकाओं की अनुमति बदल सकते हैं।
अब क्लाइंट सिस्टम पर सभी समूहों के सभी उपयोगकर्ता हमारे "साझा फ़ोल्डर" तक पहुंच सकेंगे।
अब इस बनाए गए फोल्डर में आप वह सभी सामग्री रख सकते हैं जो आप साझा करना चाहते हैं।
साझा निर्देशिका निर्यात करें
निर्यात फ़ोल्डर बनाने के बाद, हमें क्लाइंट को होस्ट सर्वर मशीन तक पहुंचने की अनुमति देनी होगी।
यह अनुमति आपके सिस्टम पर / etc फ़ोल्डर में स्थित निर्यात फ़ाइल के माध्यम से परिभाषित की गई है।
नैनो के साथ इस फ़ाइल को खोलने के लिए निम्न कमांड का उपयोग करें:
sudo nano /etc/ exports
एक बार फ़ाइल खोलने के बाद, आप निम्न कमांड के साथ बनाए गए फ़ोल्डर तक पहुंच की अनुमति दे सकते हैं:
/ruta/de/la/ carpeta-compartida ip-de-cliente (rw, sync, no_subtree_check)
O आप फ़ाइल में निम्नलिखित लाइनें जोड़कर कई ग्राहक जोड़ सकते हैं:
/ruta/de/la/carpeta-compartida ip-de-cliente-1 (rw, sync, no_subtree_check)
/ruta/de/la/carpeta-compartida ip-de-cliente-2 (rw, sync, no_subtree_check)
या आप निम्न प्रकार से एक आईपी रेंज सेट कर सकते हैं:
/ruta/de/la/carpeta-compartida ip-de-cliente1/24 (rw, sync, no_subtree_check)
इस फ़ाइल में परिभाषित "आरडब्ल्यू, सिंक, no_subtree_check" अनुमतियों का मतलब है कि ग्राहक प्रदर्शन कर सकते हैं:
आरडब्ल्यू: पढ़ने और लिखने के संचालन
सिंक: उन्हें लागू करने से पहले डिस्क में कोई भी परिवर्तन लिखें
no_subtree_check: सबट्री चेक को रोकें
होस्ट सिस्टम पर उपरोक्त सभी कॉन्फ़िगरेशन करने के बाद, अब साझा निर्देशिका को निर्यात करने का समय है:
sudo exportfs -a
अंत में, प्रभावी होने के लिए सभी सेटिंग्स के लिए, एनएफएस कर्नेल सर्वर को निम्नानुसार फिर से शुरू करें:
sudo systemctl restart nfs-kernel-server
एक महत्वपूर्ण कदम यह सत्यापित करना है कि सर्वर का फ़ायरवॉल ग्राहकों के लिए खुला है ताकि वे साझा की गई सामग्री तक पहुंच सकें।
sudo ufw allow from ip/rango to any port nfs
कुछ इस तरह से बने रहना:
sudo ufw allow from 192.168.1.1/24 to any port nfs
अब जब आप निम्न कमांड के माध्यम से अपने Ubuntu फ़ायरवॉल की स्थिति की जाँच करते हैं, तो आप क्लाइंट IP के लिए "अनुमति" के रूप में एक्शन स्टेटस देख पाएंगे।
sudo ufw status
आपका होस्ट सर्वर अब NFS कर्नेल सर्वर के माध्यम से निर्दिष्ट क्लाइंट को साझा फ़ोल्डर निर्यात करने के लिए तैयार है।
क्लाइंट मशीन को कॉन्फ़िगर करना
अब ग्राहक मशीन पर कुछ सरल कॉन्फ़िगरेशन करने का समय है, ताकि होस्ट से साझा किए गए फ़ोल्डर को क्लाइंट पर माउंट किया जा सके और फिर समस्याओं के बिना एक्सेस किया जा सके।
इस के लिए हम निम्नलिखित कमांड के साथ एनएफएस क्लाइंट स्थापित करने जा रहे हैं:
sudo apt-get install nfs-common
आपके क्लाइंट के सिस्टम को एक निर्देशिका की आवश्यकता होती है जहां होस्ट सर्वर द्वारा साझा की गई सभी सामग्री को निर्यात फ़ोल्डर में पहुँचा जा सकता है।
आप इस फ़ोल्डर को अपने सिस्टम पर कहीं भी बना सकते हैं।
sudo mkdir -p carpeta-cliente
अब आपके द्वारा पिछले चरण में बनाया गया फ़ोल्डर आपके सिस्टम के किसी अन्य फ़ोल्डर की तरह है जब तक आप अपने होस्ट से इस नए बनाए गए फ़ोल्डर में साझा निर्देशिका को माउंट नहीं करते हैं।
क्लाइंट पर होस्ट से माउंट फ़ोल्डर में साझा फ़ोल्डर को माउंट करने के लिए निम्न कमांड का उपयोग करें:
sudo mount IPdelserivdor:/ruta/de/la/carpeta-compartida /ruta/carpeta-cliente
कमांड कमोबेश निम्न प्रकार है:
sudo mount 192.168.1.1:/home/servidor/carpeta-compartida /home/cliente/carpeta-cliente
अब ग्राहक मशीन या मशीनों से फ़ोल्डर में जाकर कनेक्शन का परीक्षण करने और यह सत्यापित करने का समय है कि साझा सामग्री है।
फ़ाइल स्थानांतरण के लिए कौन सा प्रोटोकॉल तेज़ है? एनएफएस या सांबा
फ़ाइल स्थानांतरण के लिए कौन सा प्रोटोकॉल तेज़ है? एनएफएस या सांबा
हाय लुइस, गति वास्तव में आपके नेटवर्क पर निर्भर करती है।
सांबा और एनएफएस दो अलग-अलग प्रोटोकॉल हैं।
सांबा का उपयोग उन फ़ोल्डरों को साझा करने के लिए किया जाता है जिन्हें किसी अन्य सिस्टम (एंड्रॉइड, विंडोज़, लिनक्स, आदि) से एक्सेस किया जा सकता है।
एनएफएस एक प्रोटोकॉल है जो मशीन पर सर्वर मोड में स्थापित होता है जहां आपके पास वह फ़ोल्डर होता है जिसे आप साझा करना चाहते हैं और लिनक्स मशीन पर एक क्लाइंट के रूप में जहां आप इसे माउंट करना चाहते हैं जैसे कि यह एक स्थानीय फाइल सिस्टम था (आप इसे प्रत्येक में माउंट कर सकते हैं सत्र या इसे fstab फ़ाइल में कॉन्फ़िगर करें ताकि यह हर बार आपके शुरू होने पर घुड़सवार हो)।
मुझे उम्मीद है कि मैंने अंतर को थोड़ा स्पष्ट कर दिया है।
यह मुझे एक त्रुटि देता है, आपने उदाहरण नहीं दिए हैं, सिंटैक्स त्रुटि। आप गलत स्थान छोड़ते हैं इसलिए मुझे नहीं पता कि त्रुटियाँ कहाँ हैं।
इसका मुझे कोई फायदा नहीं है।