nfsd(7)

الاسم
nfsd - نظام ملفات خاص للتحكم في خادم NFS لنظام لينكس

موجز
mount -t nfsd nfsd /proc/fs/nfsd

الوصف
نظام الملفات nfsd هو نظام ملفات خاص يوفر الوصول إلى خادم NFS لنظام لينكس. يمكن للكتابة إلى الملفات في نظام الملفات هذا أن تؤثر على الخادم. يمكن للقراءة منها أن توفر معلومات عن الخادم.

بالإضافة إلى نظام الملفات هذا، توجد مجموعة من الملفات في نظام الملفات procfs (الموصول عادةً في /proc) تُستخدم للتحكم في خادم NFS. تصف صفحة الدليل هذه جميع هذه الملفات.

يتوقع البرنامجان exportfs وmountd (جزء من حزمة nfs-utils) العثور على نظام الملفات هذا موصولاً في /proc/fs/nfsd أو /proc/fs/nfs.

التفاصيل
تتضمن الملفات في نظام الملفات nfsd:

exports
    يحتوي هذا الملف على قائمة بأنظمة الملفات المُصدرة حاليًا والعملاء الذين يُصدر إليهم كل نظام ملفات، بالإضافة إلى قائمة بخيارات التصدير لذلك الزوج (عميل/نظام ملفات). هذا مشابه لملف /proc/fs/nfs/exports في الإصدار 2.4. أحد الاختلافات هو أن العميل لا يتوافق بالضرورة مع مضيف واحد فقط. يمكنه الاستجابة لمجموعة كبيرة من المضيفات التي تُعامل بشكل متطابق.

    يحتوي كل سطر من الملف على اسم مسار، واسم عميل، وعدد من الخيارات بين قوسين. سيتم استبدال أي حرف مسافة أو علامة تبويب أو سطر جديد أو شرطة مائلة عكسية في اسم المسار أو اسم العميل بشرطة مائلة عكسية متبوعة برمز ASCII الثماني لذلك الحرف.

threads
    يمثل هذا الملف عدد خيوط nfsd الجاري تشغيلها حاليًا. ستؤدي قراءته إلى إظهار عدد الخيوط. ستؤدي كتابة رقم عشري ASCII إلى تغيير عدد الخيوط (زيادة أو نقصان حسب الضرورة) لتحقيق ذلك الرقم.

filehandle
    هذا ملف غير معتاد إلى حد ما حيث أن ما يُقرأ منه يعتمد على ما كُتب إليه للتو. يوفر واجهة معاملات حيث يمكن لبرنامج فتح الملف، وكتابة طلب، وقراءة استجابة. إذا قام برنامجان منفصلان بالفتح والكتابة والقراءة في نفس الوقت، فلن تختلط طلباتهما.

    يجب أن يكون الطلب المكتوب إلى filehandle عبارة عن اسم عميل، واسم مسار، وعدد من البايتات. يجب أن يتبع ذلك سطر جديد، مع فصل الحقول بمسافات بيضاء، واقتباس ثماني للأحرف الخاصة.

    عند كتابة هذا، سيكون البرنامج قادرًا على قراءة مقبض ملف لذلك المسار كما هو مُصدر إلى العميل المُعطى. سيكون طول مقبض الملف على الأكثر عدد البايتات المُعطاة.

    سيتم تمثيل مقبض الملف بالنظام الست عشري مع بادئة '\x'.

clients/
    يحتوي هذا الدليل على دليل فرعي لكل عميل NFSv4. يعطي كل ملف تحت ذلك الدليل الفرعي بعض التفاصيل عن العميل بتنسيق YAML. بالإضافة إلى ذلك، ستؤدي كتابة "expire\n" إلى ملف ctl إلى إجبار الخادم على إلغاء جميع الحالة التي يحتفظ بها ذلك العميل فورًا.

يحتوي الدليل /proc/net/rpc في نظام الملفات procfs على عدد من الملفات والأدلة. تحتوي الملفات على إحصائيات يمكن عرضها باستخدام برنامج nfsstat. تحتوي الأدلة على معلومات عن خبائن مختلفة يحتفظ بها خادم NFS لتتبع أذونات الوصول التي يمتلكها العملاء المختلفون لأنظمة الملفات المختلفة. الخبائن هي:

auth.unix.ip
    تحتوي هذه الخبيئة على تعيين من عنوان IP إلى اسم نطاق الاستيثاق الذي يجب معاملة عنوان IP كجزء منه.

nfsd.export
    تحتوي هذه الخبيئة على تعيين من دليل ونطاق إلى خيارات التصدير.

nfsd.fh
    تحتوي هذه الخبيئة على تعيين من نطاق ومعرّف نظام ملفات إلى دليل. يُخزّن معرّف نظام الملفات في مقابض الملفات ويتكون من رقم يشير إلى نوع المعرّف وعدد من البايتات السداسية العشرية تشير إلى محتوى المعرّف.

يمكن لكل دليل يمثل خبيئة أن يحتوي من 1 إلى 3 ملفات. وهي:

flush
    عند كتابة عدد من الثواني منذ الحقبة (1 يناير 1970) إلى هذا الملف، تُبطل جميع الإدخالات في الخبيئة التي تم تحديثها آخر مرة قبل ذلك الملف وتُطرد. كتابة وقت في المستقبل (بالثواني منذ الحقبة) يطرد كل شيء. هذا هو الملف الوحيد الذي سيكون موجودًا دائمًا.

content
    يحتوي هذا الملف، إن وُجد، على تمثيل نصي لكل إدخال في الخبيئة، إدخال واحد لكل سطر. إذا كان الإدخال لا يزال في الخبيئة (لأنه يُستخدم بنشاط) ولكنه انتهت صلاحيته أو غير صالح بطريقة أخرى، فسيُعرض كتعليق (بحرف شبك بادئ).

channel
    يعمل هذا الملف، إن وُجد، كقناة لطلبات من خادم nfs القائم على النواة ليتم تمريرها إلى برنامج مساحة المستخدم للمعالجة.

    عندما تحتاج النواة إلى بعض المعلومات غير الموجودة في الخبيئة، تُظهر سطرًا في ملف channel يعطي مفتاح المعلومات. يجب على برنامج مساحة المستخدم قراءة هذا، والعثور على الإجابة، وكتابة سطر يحتوي على المفتاح، ووقت انتهاء الصلاحية، والمحتوى. على سبيل المثال قد تُظهر النواة
    nfsd 127.0.0.1
    في ملف auth.unix.ip/content. قد يكتب برنامج مساحة المستخدم بعد ذلك
    nfsd 127.0.0.1 1057206953 localhost
    للإشارة إلى أن 127.0.0.1 يجب أن يُعيّن إلى localhost، على الأقل الآن.

    إذا استخدم البرنامج select(2) أو poll(2) لاكتشاف ما إذا كان يمكنه القراءة من channel، فلن يرى أبدًا نهاية ملف، ولكن عندما تُجاب جميع الطلبات، فسيُحظر حتى يظهر طلب آخر.

في نظام الملفات /proc توجد 4 ملفات يمكن استخدامها لتمكين التتبع الإضافي لـ nfsd والكود المرتبط. وهي:
/proc/sys/sunrpc/nfs_debug
/proc/sys/sunrpc/nfsd_debug
/proc/sys/sunrpc/nlm_debug
/proc/sys/sunrpc/rpc_debug
تتحكم هذه الملفات في التتبع لعميل NFS، وخادم NFS، ومدير القفل الشبكي (lockd)، وطبقة RPC الأساسية على التوالي. يمكن قراءة أرقام عشرية من هذه الملفات أو كتابتها إليها. يمثل كل رقم نمط بت حيث تؤدي البتات المُعيّنة إلى تمكين فئات معينة من التتبع. راجع ملفات رأس النواة لمعرفة الرقم المقابل لأي تتبع.

ملاحظات
نظام الملفات هذا متوفر فقط في نوى سلسلة Linux 2.6 والإصدارات الأحدث (وفي الأجزاء اللاحقة من سلسلة التطوير 2.5 المؤدية إلى 2.6). لا تنطبق صفحة الدليل هذه على الإصدار 2.4 والإصدارات الأقدم.

سابقًا، استُخدم استدعاء النظام nfsctl للاتصال بين nfsd والأدوات المساعدة للمستخدم. أُزيل استدعاء النظام هذا في إصدار النواة 3.1. كانت إصدارات nfs-utils الأقدم قادرة على العودة إلى nfsctl إذا لزم الأمر؛ أُزيل ذلك من nfs-utils 1.3.5.

انظر أيضًا
nfsd(8), rpc.nfsd(8), exports(5), nfsstat(8), mountd(8) exportfs(8).

المؤلف
NeilBrown

ترجمة
تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 (https://www.gnu.org/licenses/gpl-3.0.html) أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.