Microsoftは、WindowsからSMBv1のサポートを削除します。
現在、VagrantはSMBv1でのみマウントを試行しますが、これはmount -t cifs
でのデフォルトの動作であるためです。 今後、新しいバージョンのWindowsでは、これはデフォルトで常に失敗します。
修正は、マウント時に2.0の最小プロトコルバージョンを指定することです。 SMBv2は、Windows Vista Service Pack1およびWindowsServer2008以降でサポートされています。 以前のバージョンのWindowsとの下位互換性が重要な場合、Vagrantは最初にプロトコルバージョン2.0でマウントを試み、サポートが存在しない場合は1.0にドロップバックする可能性があります。
Vagrant 2.0.0
Windows 10-バージョン1703(OSビルド16251.0)
Debian Stretch(generic / debian9)
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
を要求しました。 ただし、実際のエラーは、サポートされていないプロトコルの使用が原因です。
vagrant up
この問題は強く関連しているようです:
マウントオプションに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日間_⏳の間クローズされているため、ロックします。 これは、メンテナがアクティブな問題を見つけて集中するのに役立ちます。
これに似た問題を見つけた場合は、新しい問題を開いて問題テンプレートを完成させてください。これにより、さらに調査するために必要なすべての詳細を取得できます。
最も参考になるコメント
マウントオプションにsmbバージョンを追加するのと同じくらい簡単な解決策である同じ問題に遭遇しました。 提供されている例を参照してください。
config.vm.synced_folder '.', '/vagrant', disabled: false, type: "smb", smb_host: <hostname/ip>, mount_options: ['vers=3.0']