تم رفض الإذن عند تثبيت NFS باستخدام Webmin (Mac OSX + Ubuntu Setup)

StackOverflow https://stackoverflow.com//questions/23037893

سؤال

الهدف

لدي الإعداد التالي -

  • خادم منزلي يعمل بنظام التشغيل Ubuntu 13.10
  • كمبيوتر محمول يعمل بنظام التشغيل Mac OSX 10.9 (مافريكس)

أحاول تصدير دليل Home Server ~/Documents كمثبت NFS يمكن الوصول إليه من جهاز الكمبيوتر المحمول الذي يعمل بنظام Mac

إعداد أوبونتو

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

أنشأ Webmin التكوين التالي ضمن /etc/exports

/home/jeeves/Documents        (insecure,no_subtree_check,no_root_squash,rw,nohide)

إعداد الكمبيوتر المحمول Mac OX 10.9

لقد قمت بتثبيت الدليل البعيد إلى دليل محلي، /private/nfs

sudo mount -t nfs 192.168.1.219:/home/jeeves/Documents /private/nfs 

كل شيء سار على ما يرام، وأستطيع أن أرى "Dcouments" مثبتة تحتها /private في الباحث.

ومع ذلك، لا أستطيع الدخول إلى هذا الدليل

jeeves:~ $ cd /private/nfs/
-bash: cd: /private/nfs/: Permission denied

لقد قمت بتعيين webmin أذونات للقراءة/الكتابة (rw) ولا تتم تصفيته على أي عناوين IP أو أسماء مضيفين، فما المطلوب أيضًا للوصول إلى هذا الدليل؟

شكرا مقدما على كل مساعدتكم!

يحرر:

هذا هو إعداد Webmin الخاص بي.

enter image description here

لن يسمح لي Webmin بتحديد إصدار NFS رقم 4، ربما لأنه تم تثبيت NFS v3 فقط، وفقًا لما ورد في nfsstat

jeeves@HAL:~$ nfsstat
...
Server nfs v3:
null         getattr      setattr      lookup       access       readlink     
25        5% 28        6% 0         0% 126      29% 211      48% 0         0% 
...
هل كانت مفيدة؟

المحلول

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

نظرًا لأن هذا خادم منزلي، وإذا كنت تثق في كل شخص يتصل بخادم NFS الخاص بك، فإن أحد الحلول السريعة والسهلة والقذرة والقبيحة والمربكة هو فتح الأذونات والسماح للجميع وكل شيء قراءة/كتابة/حذف ملفاتك (do لا قم بذلك في بيئة المؤسسة بوضوح):

على نظام Ubuntu الخاص بك، قم بتسجيل الدخول باسم jeeves (لا sudo أو استخدم أي حساب آخر)، افتح نافذة طرفية، وقم بتشغيل الأوامر بالترتيب المحدد:

cd /home/jeeves/Documents
find . -type d -print0 | xargs -0 chmod 777
find . -type f -print0 | xargs -0 chmod a+rw

ومع ذلك، يفترض هذا أن NFS تم إعداده للسماح بالوصول إلى المستخدمين غير الموثوق بهم (في webmin، يتم تعيين "معاملة المستخدمين غير الموثوق بهم كـ" على الوضع الافتراضي، ولست متأكدًا من ذلك).

لاحظ أنه باستخدام الأوامر المذكورة أعلاه، سيظهر مالكو الملفات والأدلة التي أنشأها نظام التشغيل Mac كمستخدمين رقميين على Ubuntu (لأن نظام Ubuntu لن يكون لديه على الأرجح أي مستخدمين في /etc/passwd المقابلة للمعرفات الرقمية لنظام التشغيل Mac، سيعرض Ubuntu ببساطة المعرفات الرقمية الأولية).

اجابة طويلة:

عندما قمت بإنشاء jeeves حساب على نظام Ubuntu الخاص بك، قام Ubuntu بتعيين معرف مستخدم رقمي له.عندما قمت بإنشاء حساب المستخدم الخاص بك على جهاز Mac الخاص بك، قام جهاز Mac بتعيين معرف مستخدم رقمي له، والذي كان على الأرجح مختلفًا عن الرقم المخصص في نظام Ubuntu.لاحظ أن أسماء المستخدمين (على سبيل المثال، "jeeves") هي وسيلة مريحة للمستخدم؛لا يستخدمها Ubuntu ولا Mac داخليًا، بل يستخدمان معرفات المستخدم بدلاً من ذلك.يستخدم NFS هذه المعرفات الرقمية لتحديد الملكية/الأذونات (في مربع Ubuntu).

  • إذا تطابقت المعرفات، فسيتم استخدام أذونات "المستخدم".

  • إذا كانت المعرفات غير متطابقة:

    • (يمكن استخدام أذونات (المجموعة، لكن هذا غير مرجح، ولن أناقش ذلك.)

    • يتم استخدام الأذونات "الأخرى".لاحظ أنه عند إنشاء ملفات/أدلة، إذا لم يتم العثور على معرف مستخدم (Mac) في مربع Ubuntu، فستحصل بشكل عام على ملفات تبدو وكأنها مملوكة لمالك "رقمي"؛الرقم الذي تراه هو ما يستخدمه جهاز Mac، وترى الرقم لأن هذا المعرف لا يظهر في Ubuntu /etc/passwd.

يستخدم IIRC، Ubuntu umask 022، مما يعني أن المالك فقط /home/jeeves/Documents يمكنه كتابة/إنشاء الملفات والأدلة؛كل شخص آخر لديه أذونات للقراءة فقط.ما لم تقم بمزامنة معرفات المستخدم بطريقة أو بأخرى بين الصناديق الخاصة بك، فمن غير المرجح أن يكون لديك نفس معرفات المستخدم، وبالتالي سوف تحصل على مشكلات في الأذونات.

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

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

يحرر:جملة جزئية ثابتة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top