.\" -*- coding: UTF-8 -*- .\"@(#)sm-notify.8" .\" .\" Copyright (C) 2004 Olaf Kirch .\" .\" Rewritten by Chuck Lever , 2009. .\" Copyright 2009 Oracle. All rights reserved. .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH SM\-NOTIFY 8 "1 نوفمبر 2009" .SH الاسم sm\-notify \- إرسال إعلامات إعادة التشغيل إلى أقران NFS .SH موجز \fB/usr/sbin/sm\-notify [\-dfn] [\-m \fP\fIدقائق\fP\fB] [\-v \fP\fIاسم\fP\fB] [\-p \fP\fIمنفذ\-الإعلام\fP\fB] [\-P \fP\fIمسار\fP\fB]\fP .SH الوصف أقفال الملفات ليست جزءًا من حالة نظام الملفات المستمرة. وبالتالي تُفقد حالة القفل عند إعادة تشغيل المضيف. .PP يجب على أنظمة ملفات الشبكة أيضًا اكتشاف متى تُفقد حالة القفل بسبب إعادة تشغيل مضيف بعيد. بعد إعادة تشغيل عميل NFS، يجب على خادم NFS تحرير جميع أقفال الملفات التي تحتفظ بها التطبيقات التي كانت تعمل على ذلك العميل. بعد إعادة تشغيل الخادم، يجب على العميل تذكير الخادم بأقفال الملفات التي تحتفظ بها التطبيقات التي تعمل على ذلك العميل. .PP بالنسبة لـ NFS الإصدار 2 والإصدار 3، يُستخدم بروتوكول \fIمراقب حالة الشبكة\fP (أو NSM اختصارًا) لإعلام أقران NFS بعمليات إعادة التشغيل. على لينكس، يشكل مكونان منفصلان في مساحة المستخدم خدمة NSM: .TP \fBsm\-notify\fP برنامج مساعد يشعر نظراء NFS بعد إعادة تشغيل النظام المحلي .TP \fBrpc.statd\fP عفريت ينصت لإشعارات إعادة التشغيل من المضيفين الآخرين، ويدير قائمة المضيفين المراد إشعارهم عند إعادة تشغيل النظام المحلي .PP يقوم مدير أقفال NFS المحلي بتنبيه \fBrpc.statd\fP المحلي لكل نظير بعيد يجب مراقبته. عندما يعيد النظام المحلي التشغيل، يقوم أمر \fBsm\-notify\fP بإشعار خدمة NSM على النظراء المراقبين بإعادة التشغيل. عندما يعيد نظير بعيد التشغيل، يقوم ذلك النظير بإشعار \fBrpc.statd\fP المحلي، والذي بدوره يمرر إشعار إعادة التشغيل إلى مدير أقفال NFS المحلي. .SH "عملية NSM بالتفصيل" يؤدي أول تفاعل لقفل الملفات بين عميل وخادم NFS إلى قيام مديري أقفال NFS في كلا الطرفين بالاتصال بخدمة NSM المحلية الخاصة بهما لتخزين معلومات حول الطرف المقابل. في لينكس، يتصل مدير القفل المحلي بـ \fBrpc.statd\fP. .PP يسجل \fBrpc.statd\fP معلومات حول كل نظير NFS مٌراقب على وحدة تخزين مستمرة. تصف هذه المعلومات كيفية الاتصال بنظير بعيد في حالة إعادة تشغيل النظام المحلي، وكيفية التعرف على النظير المٌراقب الذي يبلغ عن إعادة التشغيل، وكيفية إخطار مدير القفل المحلي عندما يشير النظير المٌراقب إلى أنه أعاد التشغيل. .PP يرسل عميل NFS اسم مضيف، يعرف باسم \fIالمستدعِي\fP للعميل، في كل طلب قفل ملف. يمكن لخادم NFS استخدام اسم المضيف هذا لإرسال استدعاءات GRANT غير متزامنة للعميل، أو لإشعار العميل بأنه أُعيد تشغيله. .PP يمكن لخادم NFS في لينكس توفير \fIcaller_name\fP الخاص بالعميل أو عنوان شبكة العميل إلى \fBrpc.statd\fP. لأغراض بروتوكول NSM، يُعرف هذا الاسم أو العنوان باسم \fImon_name\fP للمتراسل المراقب. بالإضافة إلى ذلك، يخبر مدير القفل المحلي \fBrpc.statd\fP بما يعتقد أنه اسم مضيفه الخاص. لأغراض بروتوكول NSM، يُعرف اسم المضيف هذا باسم \fImy_name\fP. .PP لا يوجد تفاعل مكافئ بين خادم NFS وعميل لإعلام العميل بـ \fIcaller_name\fP الخاص بالخادم. لذلك، لا يعرف عملاء NFS فعليًا ما هو \fImon_name\fP الذي قد يستخدمه خادم NFS في طلب SM_NOTIFY. يسجل عميل NFS في لينكس اسم المضيف للخادم المستخدم في أمر التحميل لتحديد خوادم NFS التي تعيد التشغيل. .SS "إشعار إعادة التشغيل" عند إعادة تشغيل النظام المحلي، يقرأ أمر \fBsm\-notify\fP قائمة الأقران المراقبين من التخزين الدائم ويرسل طلب SM_NOTIFY إلى خدمة NSM على كل قرن بعيد مدرج. يستخدم سلسلة \fImon_name\fP كوجهة. لتحديد أي مضيف أعيد تشغيله، يرسل أمر \fBsm\-notify\fP عادةً سلسلة \fImy_name\fP المسجلة عند مراقبة ذلك البعيد. يطابق \fBrpc.statd\fP البعيد طلبات SM_NOTIFY الواردة باستخدام هذه السلسلة، أو عنوان الشبكة للمتصل، مع قرن واحد أو أكثر في قائمة المراقبة الخاصة به. .PP إذا لم يجد \fBrpc.statd\fP نظيرا في قائمة مراقبته يطابق طلب SM_NOTIFY الوارد، فلن يُمرر الإشعار إلى مدير الأقفال المحلي. بالإضافة إلى ذلك، لكل نظير \fIرقم حالة NSM\fP خاص به، وهو عدد صحيح 32\-بت يتم رفعه بعد كل إعادة تشغيل بواسطة أمر \fBsm\-notify\fP. يستخدم \fBrpc.statd\fP هذا الرقم للتمييز بين عمليات إعادة التشغيل الحقيقية والإشعارات المعادة. .PP جزء من استعادة قفل NFS هو إعادة اكتشاف المتراسلين الذين يحتاجون إلى المراقبة مرة أخرى. يمسح الأمر \fBsm\-notify\fP قائمة المراقبة في التخزين المستمر بعد كل إعادة تشغيل. .SH الخيارات .TP \fB\-d\fP يبقي \fBsm\-notify\fP ملحقًا بطرفيته التحكمية ويعمل في المقدمة بحيث يمكن مراقبة تقدم الإعلام مباشرة. .TP \fB\-f\fP أرسل الإعلامات حتى لو كان \fBsm\-notify\fP قد عمل بالفعل منذ آخر إعادة تشغيل للنظام. .TP \fB\-m\fP\fI وقت\-إعادة\-المحاولة\fP يحدد طول الوقت، بالدقائق، لمواصلة إعادة محاولة الإعلامات للمضيفين غير المستجيبين. إذا لم يُحدد هذا الخيار، يحاول \fBsm\-notify\fP إرسال الإعلامات لمدة 15 دقيقة. يؤدي تحديد القيمة 0 إلى جعل \fBsm\-notify\fP يواصل إرسال الإعلامات إلى الأقران غير المستجيبين حتى يُقتل يدويًا. .IP تُعاد محاولة الإعلامات إذا فشل الإرسال، أو لم يستجب البعيد، أو لم تُسجل خدمة NSM للبعيد، أو إذا كان هناك فشل في DNS يمنع تحليل \fImon_name\fP للبعيد إلى عنوان. .IP لا تُزال المضيفات من قائمة الإعلام حتى يُستلم رد صالح. ومع ذلك، فإن إجراء SM_NOTIFY له نتيجة فارغة. لا توجد طريقة لـ \fBsm\-notify\fP لمعرفة ما إذا كان البعيد قد تعرف على المرسل وبدأ استرداد القفل المناسب. .TP \fB\-n\fP يمنع \fBsm\-notify\fP من تحديث رقم حالة NSM للنظام المحلي. .TP \fB\-p\fP\fI منفذ\fP يحدد رقم منفذ المصدر الذي يجب أن يستخدمه \fBsm\-notify\fP عند إرسال إعلامات إعادة التشغيل. إذا لم يُحدد هذا الخيار، يُستخدم منفذ مؤقت مختار عشوائيًا. .IP يمكن استخدام هذا الخيار لعبور جدار ناري بين العميل والخادم. .TP \fB\-P, \fP\fB\-\-state\-directory\-path\fP\fI مسار_الاسم\fP يحدد اسم مسار الدليل الأصلي حيث توجد معلومات حالة NSM. إذا لم يُحدد هذا الخيار، يستخدم \fBsm\-notify\fP \fI/var/lib/nfs\fP افتراضيًا. .IP بعد البدء، يحاول \fBsm\-notify\fP تعيين UID و GID الفعليين إلى المالك والمجموعة للدليل الفرعي \fBsm\fP من هذا الدليل. بعد تغيير المعرفات الفعلية، يحتاج \fBsm\-notify\fP فقط إلى الوصول إلى الملفات في \fBsm\fP و \fBsm.bak\fP داخل مسار دليل الحالة. .TP \fB\-v\fP\fI عنوان\-ip \fP\fB|\fP\fI اسم\-مضيف\fP يحدد عنوان الشبكة الذي سيُرسل منه إعلامات إعادة التشغيل، ووسيطة \fImon_name\fP لاستخدامها عند إرسال طلبات SM_NOTIFY. إذا لم يُحدد هذا الخيار، يستخدم \fBsm\-notify\fP عنوانًا بدلًا كعنوان ربط النقل، ويستخدم \fImy_name\fP المسجل عند مراقبة البعيد كوسيطة \fImon_name\fP عند إرسال طلبات SM_NOTIFY. .IP يمكن التعبير عن صيغة \fIipaddr\fP كعنوان عرض IPv4 أو IPv6. إذا تم استخدام صيغة \fIipaddr\fP، يقوم أمر \fBsm\-notify\fP بتحويل هذا العنوان إلى اسم مضيف لاستخدامه كوسيط \fImon_name\fP عند إرسال طلبات SM_NOTIFY. .IP قد يكون هذا الخيار مفيدًا في التهيئات متعددة الواجهات حيث يتطلب البعيد الإخطار من عنوان شبكة محدد. .SH "ملف الضبط" يمكن التحكم في العديد من الخيارات التي يمكن تعيينها في سطر الأوامر أيضًا من خلال القيم المحددة في القسم \fB[sm\-notify]\fP أو، في حالة واحدة، القسم \fB[statd]\fP من ملف التهيئة \fI/etc/nfs.conf\fP. تشمل القيم المعترف بها في القسم \fB[sm\-notify]\fP: \fBretry\-time\fP و\fBoutgoing\-port\fP و\fBoutgoing\-addr\fP. لهذه نفس تأثير خيارات سطر الأوامر \fBm\fP و\fBp\fP و\fBv\fP على التوالي. قيمة إضافية معترف بها في القسم \fB[sm\-notify]\fP هي \fBlift\-grace\fP. افتراضيًا، يرفع \fBsm\-notify\fP فترة السماح لـ lockd مبكرًا إذا لم يكن لديه مضيفين لإخطارهم. بعض تهيئات التوفر العالي تشغل مثيل \fBsm\-notify\fP واحد لكل عنوان IP عائم. في هذه التهيئات، قد يمنع رفع فترة السماح مبكرًا العملاء من استعادة الأقفال. تعيين \fBlift\-grace\fP إلى \fBn\fP يمنع \fBsm\-notify\fP من إنهاء فترة السماح مبكرًا. لا يوجد خيار سطر أوامر مقابل لـ \fBlift\-grace\fP. القيمة المعترف بها في القسم \fB[statd]\fP هي \fBstate\-directory\-path\fP. .SH الأمن يبدأ أمر \fBsm\-notify\fP عمومًا كجذر لاكتساب الصلاحيات اللازمة للوصول إلى قاعدة بيانات معلومات الحالة. يتخلى عن صلاحيات الجذر فور بدء التشغيل لتقليل خطر هجوم تصعيد الصلاحيات. .PP خلال العملية العادية، يكون معرف المستخدم الفعال الذي يختاره هو مالك دليل الحالة. يتيح له هذا الاستمرار في الوصول إلى الملفات في ذلك الدليل بعد التخلي عن صلاحيات الجذر. للتحكم في معرف المستخدم الذي يختاره \fBrpc.statd\fP، استخدم ببساطة \fBchown\fP(1) لضبط مالك دليل الحالة. .PP يمكن أيضًا بدء أمر \fBsm\-notify\fP بواسطة معرف المستخدم الذي يملك دليل الحالة. هذا مفيد للحالة عندما يُستدعى من برنامج rpc\-stat ha\-callout الذي يعمل بالفعل كمستخدم غير مميز. لن يمتلك المستخدم غير الجذر القدرات اللازمة للتخلي عن صلاحيات الجذر كما هو موصوف أعلاه. .SH "ملاحظات إضافية" استرداد القفل بعد إعادة التشغيل أمر بالغ الأهمية للحفاظ على سلامة البيانات ومنع تعليق التطبيقات غير الضروري. .PP لمساعدة \fBrpc.statd\fP في مطابقة طلبات SM_NOTIFY مع طلبات NLM، يجب مراعاة عدد من أفضل الممارسات، بما في ذلك: .IP يجب أن يتطابق اسم عقدة UTS لأنظمتك مع أسماء DNS التي يستخدمها متراسلو NFS للاتصال بها .IP يجب أن تكون أسماء عقد UTS لأنظمتك دائمًا أسماء نطاقات مؤهلة بالكامل .IP يجب أن تكون خرائط DNS الأمامية والعكسية لأسماء عقد UTS متسقة .IP يجب أن يتطابق اسم المضيف الذي يستخدمه العميل لضم (mount) الخادم مع \fImon_name\fP الخاص بالخادم في طلبات SM_NOTIFY التي يرسلها .PP لا يؤدي فصل نظام ملفات NFS بالضرورة إلى توقف عميل NFS أو الخادم عن مراقبة بعضهما البعض. قد يستمر كلاهما في مراقبة بعضهما البعض لفترة في حال أدت حركة مرور NFS اللاحقة بينهما إلى عمليات وصل جديدة وقفل ملفات إضافي. .PP في لينكس، إذا جرى إلغاء تحميل وحدة النواة \fBlockd\fP أثناء التشغيل العادي، فإن جميع نظراء NFS البعيدين سيصبحون غير مراقبين. يمكن أن يحدث هذا في عميل NFS، على سبيل المثال، إذا قام أداة تركيب تلقائي (automounter) بإزالة جميع نقاط تركيب NFS بسبب عدم النشاط. .SS "دعم IPv6 و TI\-RPC" TI\-RPC شرط أساسي لدعم NFS على IPv6. إذا كان دعم TI\-RPC مدمجًا في أمر \fBsm\-notify\fP، فسيختار ناقل IPv4 أو IPv6 مناسب بناءً على عنوان الشبكة الذي يعيده DNS لكل نظير بعيد. يجب أن يكون متوافقًا تمامًا مع الأنظمة البعيدة التي لا تدعم TI\-RPC أو IPv6. .PP حاليًا، يدعم أمر \fBsm\-notify\fP إرسال الإخطار فقط عبر بروتوكولات ناقل البيانات (datagram). .SH الملفات .TP 2.5i \fI/var/lib/nfs/sm\fP الدليل الذي يحتوي على قائمة المراقبة .TP 2.5i \fI/var/lib/nfs/sm.bak\fP الدليل الذي يحتوي على قائمة الإشعارات .TP 2.5i \fI/var/lib/nfs/state\fP رقم حالة NSM لهذا المضيف .TP 2.5i \fI/proc/sys/fs/nfs/nsm_local_state\fP نسخة النواة من رقم حالة NSM .SH "انظر أيضًا" \fBrpc.statd\fP(8), \fBnfs\fP(5), \fBuname\fP(2), \fBhostname\fP(7) .PP RFC 1094 \- "NFS: مواصفات بروتوكول نظام ملفات الشبكة" .br RFC 1813 \- "NFS الإصدار 3 مواصفات البروتوكول" .br بروتوكولات OpenGroup للعمل البيني: XNFS، الإصدار 3W \- الفصل 11 .SH المؤلفون Olaf Kirch .br Chuck Lever .PP .SH ترجمة تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي . .PP هذه الترجمة هي وثيقة مجانية؛ راجع .UR https://www.gnu.org/licenses/gpl-3.0.html رخصة جنو العامة الإصدار 3 .UE أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات. .PP إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: .MT kde-l10n-ar@kde.org .ME .