Vagrant: استخدم ، على الأقل ، SMBv2 عند تحميل مجلدات متزامنة لمضيف Windows.

تم إنشاؤها على ٩ سبتمبر ٢٠١٧  ·  3تعليقات  ·  مصدر: hashicorp/vagrant

تقوم Microsoft بإزالة دعم SMBv1 من Windows.

حاليًا ، على الرغم من أن Vagrant سيحاول فقط التثبيت باستخدام SMBv1 ، لأن هذا هو السلوك الافتراضي مع mount -t cifs . من الآن فصاعدًا ، في الإصدارات الأحدث من Windows ، سيفشل هذا دائمًا افتراضيًا.

الإصلاح هو تحديد إصدار بروتوكول أدنى من 2.0 عند التركيب. SMBv2 مدعوم في Windows Vista Service Pack 1 و Windows Server 2008 أو أعلى. إذا كان التوافق مع الإصدارات السابقة مع الإصدارات السابقة من Windows أمرًا مهمًا ، فقد يحاول Vagrant التحميل باستخدام الإصدار 2.0 من البروتوكول أولاً ، والعودة إلى الإصدار 1.0 إذا لم يكن الدعم موجودًا.

نسخة المتشرد

Vagrant 2.0.0

نظام التشغيل المضيف

Windows 10 - الإصدار 1703 (إصدار نظام التشغيل 16251.0)

نظام التشغيل الضيف

تمديد ديبيان (عام / debian9)

Vagrantfile

Vagrant.configure("2") do |config|
  config.vm.box = "generic/debian9"
  config.vm.synced_folder ".", "/vagrant"
  # Note: A successful mount can be achieved by specifying:
  # config.vm.synced_folder ".", "/vagrant", mount_options: ["vers=2.0"]
end

إخراج التصحيح

https://gist.github.com/rhencke/5e58e291607d0f0bf6544342ba349cb8

(للمقارنة ، يوجد هنا سجل يوضح كيف يمكن تحقيق تثبيت ناجح باستخدام خيارات التحميل الإضافية الموضحة أعلاه: https://gist.github.com/rhencke/11f8dff86d719e9386941dd653e8a117)

سلوك متوقع

تم تحقيق التثبيت بنجاح عند تشغيل mount -t cifs .

السلوك الفعلي

فشل التثبيت عند تشغيل mount -t cifs ، مطالبة بـ mount error(112): Host is down . ومع ذلك ، فإن الخطأ الفعلي يرجع إلى استخدام بروتوكول غير مدعوم.

خطوات التكاثر

  1. على جهاز كمبيوتر يعمل بنظام Windows 10 ، الإصدار 1703 (إصدار نظام التشغيل 16251.0):
    أ. تمكين Hyper-V
    ب. قم بتثبيت Vagrant 2.0.0
  2. قم بإنشاء ملف Vagrant ، يحتوي على المثال المذكور سابقًا
  3. vagrant up

مراجع

يبدو أن هذه المشكلة وثيقة الصلة:

hoswindows synced-foldersmb

التعليق الأكثر فائدة

حصلت في نفس المشكلة التي يكون حلها بسيطًا مثل إضافة إصدار smb في خيارات التحميل. انظر المثال المقدم:

config.vm.synced_folder '.', '/vagrant', disabled: false, type: "smb", smb_host: <hostname/ip>, mount_options: ['vers=3.0']

ال 3 كومينتر

حصلت في نفس المشكلة التي يكون حلها بسيطًا مثل إضافة إصدار smb في خيارات التحميل. انظر المثال المقدم:

config.vm.synced_folder '.', '/vagrant', disabled: false, type: "smb", smb_host: <hostname/ip>, mount_options: ['vers=3.0']

شكرًا ghousseyn ، حلك لإضافة vers=3.0 جعل الأشياء تعمل لصالحنا. لم نعد نرى مشكلة Host is down العشوائية.

سأقوم بإغلاق هذه المشكلة لأنه تم إغلاقه لمدة _30 يومًا_ ⏳. يساعد هذا المشرفين لدينا في العثور على المشكلات النشطة والتركيز عليها.

إذا وجدت مشكلة تبدو مشابهة لهذا ، فالرجاء فتح مشكلة جديدة وإكمال نموذج المشكلة حتى نتمكن من الحصول على جميع التفاصيل اللازمة لإجراء مزيد من التحقيق.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات