NFS أو Network File System هو بروتوكول نظام ملفات موزعتم إنشاؤه في الأصل بواسطة Sun Microsystems. من خلال NFS ، يمكن السماح للنظام بمشاركة الدلائل والملفات مع الآخرين عبر الشبكة.
في مشاركة ملفات NFS ، يمكن للمستخدمين وحتى البرامج الوصول إلى المعلومات الموجودة على الأنظمة البعيدة كما لو كانوا يقيمون على جهاز محلي.
NFS تعمل في بيئة خادم العميل حيث يكون الخادم مسؤولاً عن إدارة مصادقة العميل والتفويض والإدارة ، بالإضافة إلى جميع البيانات المشتركة داخل نظام ملفات معين.
عند الحصول على إذن ، يمكن لأي عدد من العملاء الوصول إلى البيانات المشتركة كما لو كانت موجودة على وحدة التخزين الداخلية الخاصة بهم.
يعد إعداد خادم NFS على نظام Ubuntu الخاص بك أمرًا بسيطًا للغاية. كل ما عليك القيام به هو إجراء بعض عمليات التثبيت والتكوينات الضرورية ، سواء على الخادم أو على أجهزة العميل ، وأنت على ما يرام.
في هذه المقالة ، سنشرح خطوة بخطوة كيفية تكوين خادم NFS والعميل الذي سيسمح لهم بمشاركة الملفات من نظام Ubuntu إلى آخر.
تكوين خادم NFS
لتكوين النظام المضيف لمشاركة الأدلة ، سنحتاج إلى تثبيت خادم NFS Kernel ثم إنشاء وتصدير الأدلة التي نريد أن تصل إليها أنظمة العميل.
الآن سنقوم بفتح محطة طرفية باستخدام 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 على نظامك.
استخدم الأمر التالي لفتح هذا الملف باستخدام Nano:
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)
أو يمكنك تعيين نطاق IP على النحو التالي:
/ruta/de/la/carpeta-compartida ip-de-cliente1/24 (rw, sync, no_subtree_check)
تعني أذونات "rw ، sync ، no_subtree_check" المحددة في هذا الملف أنه يمكن للعملاء تنفيذ ما يلي:
rw: عمليات القراءة والكتابة
مزامنة: اكتب أي تغييرات على القرص قبل تطبيقها
no_subtree_check - يمنع فحص الشجرة الفرعية
بعد إجراء جميع التكوينات المذكورة أعلاه على النظام المضيف ، حان الوقت الآن لتصدير الدليل المشترك:
sudo exportfs -a
وأخيرا، لكي تصبح جميع الإعدادات سارية المفعول ، أعد تشغيل خادم NFS kernel على النحو التالي:
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
الخادم المضيف جاهز الآن لتصدير المجلد المشترك إلى العملاء المحددين من خلال خادم Kernel NFS.
تكوين جهاز العميل
حان الوقت الآن للقيام ببعض التكوينات البسيطة على جهاز العميل ، بحيث يمكن تحميل المجلد المشترك من المضيف على العميل ثم الوصول إليه دون مشاكل.
لهذا سنقوم بتثبيت عميل 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
حان الوقت الآن لاختبار الاتصال بالانتقال إلى المجلد من جهاز العميل أو الأجهزة والتحقق من وجود المحتوى المشترك.
ما هو البروتوكول الأسرع لنقل الملفات؟ NFS أو سامبا
أي بروتوكول أسرع لنقل الملفات؟ NFS أو سامبا
مرحبًا لويس ، السرعة تعتمد حقًا على شبكتك.
Samba و NFS بروتوكولان مختلفان.
يستخدم Samba لمشاركة المجلدات التي يمكن الوصول إليها من أي نظام آخر (Android ، windows ، Linux ، إلخ)
NFS هو بروتوكول يتم تثبيته في وضع الخادم على الجهاز حيث لديك المجلد الذي تريد مشاركته وكعميل على جهاز Linux حيث تريد تثبيته كما لو كان نظام ملفات محليًا (يمكنك تثبيته في كل جلسة أو تكوينه في ملف fstab بحيث يتم تحميله في كل مرة تبدأ فيها).
آمل أن أكون قد أوضحت الفرق قليلاً.
إنه يعطيني خطأ ، لم تضع أمثلة ، خطأ نحوي. أنت تترك فراغات خاطئة لذلك لا أعرف أين توجد الأخطاء.
لا فائدة لي.