NFS (العربية)

From ArchWiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
  • [[{{{1}}}|{{{2}}}]]
  • NFS Troubleshooting
  • نقلا عن: Wikipedia: نظام ملفات الشبكة:(Network File System NFS) هو بروتوكول نظام الملفات الموزع وقد تم تطويره من شركة صن ميكروسيستمز عام 1984 ، حيث يتيح للمستخدم على الحاسب العميل أن يصل للملفات عبر الشبكة بطريقة مشابهة لكيفية الوصول إلى أقراص التخزين المحلية.

    التثبيت

    كل من الخادم والعميل يتطلبان فقط إلى تثبيت الحزمة nfs-utils.

    ملاحظة: ينصح بشدة باستخدام خدمة المزامنة على جميع النقاط في شبكتك للاحتفاظ بتزامن التوقيت على الخادم/العميل.وبدون الضبط الدقيق للتوقيت على كافة العقد ، يمكن ل NFS ان يسبب تأخيرات غير مرغوب فيها! يوصى باستخدام نظام بروتوكول توقيت الشبكة NTP لمزامنة كل من الخادم والعملاء لوجود خوادم عالية الدقة لتوقيت الشبكة المتاحة على الإنترنت.

    التهيئة

    الخادم

    مخطط المعرفات ID mapping

    عدل الملف /etc/idmapd.conf واضبط حقل Domain حسب اسم النطاق لديك.

    /etc/idmapd.conf
    [General]
     
    Verbosity = 1
    Pipefs-Directory = /var/lib/nfs/rpc_pipefs
    Domain = atomic
    
    [Mapping]
    
    Nobody-User = nobody
    Nobody-Group = nobody
    

    نظام الملفات

    ملاحظة: لأسباب تتعلق بالأمن ، يوصى باستخدام قسم جذر export للتصدير في NFS والذي سيحدد عمل المستخدمين على هذه النقطة فحسب هذا الثمال سيوضح هذا المفهوم.

    تحديد اي مشاركات ل NFS في /etc/exports والتي ترتبط ب NFS root. في هذا المثال سيكون قسم الجذر ل NFS هو /srv/nfs4 وسوف يتشارك ب /mnt/music.

    # mkdir -p /srv/nfs4/music

    تصاريح الكتابة والقراءة Read/Write يجب ضبطها على المجلد music لذا يمكن للعملاء أن يكتبوا عليه. اﻵن وصل مجلد التشارك الفعلي، /mnt/music مع NFS عن طريق أمر الوصل:

    # mount --bind /mnt/music /srv/nfs4/music

    لجعل ذلك ثابتا عند إعادة تشغيل الخادم ، أضف خيار الربط الإلزامي bind لملف fstab:

    /etc/fstab
    /mnt/music /srv/nfs4/music  none   bind   0   0
    

    ملف Exports

    أضف المجلدات التي تريد مشاركتها وأحد عناوين ip أو اسم المضيف hostname(s) لحاسب العميل ، الذي سيتاح له توصيل هذه المجلدات في exports:

    /etc/exports
    /srv/nfs4/ 192.168.0.1/24(rw,fsid=root,no_subtree_check)
    /srv/nfs4/music 192.168.0.1/24(rw,no_subtree_check,nohide) # note the nohide option which is applied to mounted directories on the file system.
    

    لا يحتاج المستخدمون لفتح المشاركة بداخل الشبكة الفرعية، أحدهم يمكنه تحديد عنوان IP مفرد أو hostname أيضا. لمزيد من المعلومات عن كل الخيارات المتاحة انظر exports(5). إذا قمت بتعديل الملف /etc/exports أثناء عمل الخادم ، يجب عليك إعادة التصدير لها لتفعيل ما قمت به من تغييرات:

    # exportfs -ra

    بدء عمل الخادم

    بدء/تفعيل rpc-idmapd.service و rpc-mountd.service. لاحظ أن هذه الوحدات تتطلب غيرها من الخدمات، والتي يتم تشغيلها تلقائيا من قِبل systemd.

    العميل Client

    يحتاج العملاء إلى الحزمة nfs-utils للاتصال، لكن لا يتطلب إعدادا خاصا عندما يتصل بخوادم NFS4 .

    التوصيل من نظام لينكس

    إظهار أنظمة الملفات الخوادم المصدرة:

    $ showmount -e servername

    ثم توصيل جذر خادم NFS :

    # mount -t nfs4 servername:/music /mountpoint/on/client
    إعدادات الملف etc/fstab/

    استخدام الملف fstab مفيد للخادم الذي يعمل دوما، وتكون مشاركات NFS متاحة حالما يشتغل العميل.قم بتحرير الملف /etc/fstab ، وأضف السطر المناسب الذي يعكس هذا الإعداد. مرة ثانية، جذر خادم NFS مهمل.

    /etc/fstab
    servername:/music   /mountpoint/on/client   nfs4   rsize=8192,wsize=8192,timeo=14,intr,_netdev	0 0
    
    ملاحظة: خيارات التوصيل الإضافية يمكن تحديدها هنا. قم بالرجوع إلى صفحة مساعدة NFS لمزيد من المعلومات.

    بعض خيارات التوصيل الإضافية للنظر هي ما يلي:

    • rsize=8192 and wsize=8192
    • timeo=14
    • intr
    • _netdev

    قيمة rsize هي عدد البايتات المستخدمة حين القراءة من الخادم. القيمة wsize هي عدد البايتات المستخدمة عند الكتابة على الخادم. يوصى بتجربة ذلك بعد عمل هذه التغييرات. قيمة timeo هي مقدار الوقت، محسوبا بمعشار الثانية، التي يتم انتظارها قبل إعادة الإرسال بعد نفاذ مهلة نداء الإجراء البعيد RPC timeout. بعد نفاذ المهلة اﻷولى، تضاعف قيمة المهلة لكل إعادة محاولة لمدة أقصاها 60 ثانية أو حتى تنفذ المهلة الكبرى. إذا كان الاتصال بالخادم بطيئا أو خلال انشغال بالشبكة ، يمكن تحقيق أفضل أداء بزيادة قيمة هذه المهلة. الخيار intr يسمح للإشارات بمقاطعة العملية إذا كانت المهلة اﻷكبر تحدث في اتصال دائم hard-mounted.. الخيار _netdev يبلغ النظام بالانتظار طالما كانت تعمل الشبكة قبل محاولة توصيل المشاركة. يفترض systemd ذلك بالنسبة ل NFS لكن على أية حال من اﻷفضل تطبيقه لجميع أنواع نظم ملفات الشبكة.

    استخدام autofs

    استخدام autofs مفيد للحواسب التي تريد الاتصال عن طريق NFS; ويمكن أن تكون خوادم أو عملاء أيضا. السبب في هذه الطريقة هو أفضلية بعضها على بعض أنه عند إطفاء الخادم ، فلن يحصل العميل على أخطاء عن عدم قدرته الوصول إلى مشاركات NFS. انظر autofs#NFS network mounts لمزيد من التفاصيل.

    التوصيل من وندوز

    ملاحظة: إصدارات وندوز 7 من نوع Ultimate و Enterprise وإصدارة Enterprise من ندوز 8 تحتوي على "عميل NFS".

    ملفات مشاركة NFS يمكن توصيلها من وندوز غذا كان خدمة "عمسل NFS" مفعلة )حيث إنها غير مفعلة افتراضيا) ولتثبيت هذه الخدمة اذهب إلى "Programs and features" في لوحة التحكم واضغط على "Turn Windows features on or off". حدد مكان "خدمات NFS" وقم بتفعيلها أيضا وكذلك كل من الخدمات الفرعية("Administrative tools" و "عميل NFS").

    بعض الخيارات العامة يمكن ضبطها عن طريق فتح "Services for Network File System" (حدد مكانها عنة طريق صندوق البحث) ثم اضغط بالزر اﻷيمن على client->properties.

    تحذير: قد تحدث بعض المشاكل المتعلقة باﻷداء (حيث تأخذ ما بين 30-60 ثانية لإظهار المجلد ، وسرعة نقل الملفات 2 MB/s على شرائح شبكات جيجابايت، حيث لم تتوصل ميكروسوفت إلى حل لذلك حتى اﻵن . [١]

    لتوصيل مجلدات الماركة باستخدام المتصفح Explorer:

    Computer > Map network drive > servername:/srv/nfs4/music

    التوصيل من نظام ماك OS X

    ملاحظة: نظام OS X يستخدم افتراضيا المنفذ غير الآمن (>1024) لتوصيل مجلدات المشاركة

    ويستوي كل من استيراد ملفات المشاركة ب insecure flag, والتوصيل باستخدام Finder:

    Go > Connect to Server > nfs://servername/ أو توصيل ملفات المشاركة عن طريق استخدام المنفذ غير اﻵمن عن طريق الطرفية:

    # sudo mount -t nfs -o resvport servername:/srv/nfs4 /Volumes/servername

    استكشاف الأخطاء وإصلاحها

    اقرأ هذا المقال المخصص NFS Troubleshooting.