web-dev-qa-db-ja.com

VagrantはVirtualBox共有フォルダーをマウントできませんでした

現在の設定:Virtualbox 5.1.2 with Vagrant 1.9.

以前の作業セットアップ:Virtualbox 5.1.18 with Vagrant 1.9.

Virtualboxの最新バージョンをインストールし、VMを起動しようとしました。フォルダのマウントが機能しなくなりました。 Virtualbox 5.1.18で同じフォルダーマウントが正常に機能します。次のエラーメッセージが表示されます。

VagrantはVirtualBox共有フォルダーをマウントできませんでした。これは通常、ファイルシステム「vboxsf」が利用できないためです。このファイルシステムは、VirtualBox Guest Additionsおよびカーネルモジュールを介して利用可能になります。これらのゲスト追加がゲストに適切にインストールされていることを確認してください。これはVagrantのバグではなく、通常、Vagrantボックスの欠陥が原因です。コンテキストの場合、試行されたコマンドは次のとおりです。

 mount -t vboxsf -o uid=1000,gid=1000 keys /keys 

コマンドからのエラー出力は次のとおりです。

mount: wrong fs type, bad option, bad superblock on keys,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try dmesg | tail or so.

vagrant-vbguestプラグインを手動で(vagrant plugin install vagrant-vbguest経由で)インストールしようとしましたが、何も修正されませんでした。 5.1.18にダウングレードすると解決しますが、これは理想的な前進ではありません。

Virtualbox 5.1.2およびVagrant 1.9.でフォルダーマウントを機能させるにはどうすればよいですか?

64
edwardmlyte

更新

VirtualBox 5.1.22で修正されました。

https://www.virtualbox.org/ticket/1667

元の回答

私の場合、VM内のシンボリックリンクが間違っていました。 VMにログインします。

$ vagrant ssh

次に:

$ ls -lh /sbin/mount.vboxsf 
lrwxrwxrwx 1 root root 49 Apr 19 14:05 /sbin/mount.vboxsf -> /opt/VBoxGuestAdditions-5.1.20/other/mount.vboxsf

このリンクは壊れています。 /opt/VBoxGuestAdditions-5.1.20/の中を見ると、サブフォルダー「other」が存在しないことがわかります。この行はそれを修正します:

$ Sudo ln -sf /opt/VBoxGuestAdditions-*/lib/VBoxGuestAdditions/mount.vboxsf /sbin/mount.vboxsf

VMからログアウトします。

$ exit

そして、それがあなたのために働くかどうか確認してください:

$ vagrant reload

ただし、/ sbin/mount.vboxsfがボックス内に存在しないため、リンクを修正できません!

リンク/sbin/mount.vboxsfがそもそも存在しない場合、VBoxGuestAdditionsをインストールできませんでした。これは、VirtualBoxの更新後に対応するVirtualBox Extension Packをダウンロードしていない場合に発生する可能性があります(v5.2.18以降は、Virtualboxの更新中に自動的にダウンロードする必要があります)。今すぐできます:

  • 実行中のすべてのVMを停止します。
  • VirtualBoxプログラムを開きます。
  • VirtualBox Extension Packのダウンロードを開始してインストールします。
  • VirtualBox Extension Packをダウンロードするかどうかを尋ねられない場合は、-> File-> Check for Updateを開いて、ダウンロードダイアログをトリガーします。

VirtualBox Extensionの更新がなかった場合、インストーラーがメッセージを表示し、vagrantプラグインvbguestが応答を要求できないため、VBoxGuestAdditionsをインストールできません(これは vbguest v0で「修正済み」です)。 15. )。それは「浮浪者」の出力で見ることができます。次のような行があるはずです。

Do you wish to continue? [yes or no]

その場合は、インストーラーを手動で実行できます。そのためには、ボックスを開始します。

$ vagrant up

次に、vbguestをトリガーしてインストールを再試行しますが、後でVBoxGuestAdditions ISOをマウントしたままにします。

$ vagrant vbguest --do install --no-cleanup

ボックスにログインします。

$ vagrant ssh

インストーラーを手動で実行しました。

$ Sudo /mnt/VBoxLinuxAdditions.run

最後の希望:DIY!

上記のいずれも機能しない場合は、ゲスト追加機能を手動でインストールしてください。

cd /opt
Sudo wget -c http://download.virtualbox.org/virtualbox/5.1.28/VBoxGuestAdditions_5.1.28.iso -O VBoxGuestAdditions_5.1.28.iso
Sudo mount VBoxGuestAdditions_5.1.28.iso -o loop /mnt
Sudo sh /mnt/VBoxLinuxAdditions.run
119
Daviz

私の場合、VirtualBox 5.2.6およびVagrant 2.0.1でvbguestプラグインをインストールできました。

vagrant plugin install vagrant-vbguest

30

これは私のために働いた...次を実行する:

vagrant plugin repair

それから

vagrant plugin expunge --reinstall

それから

vagrant reload
2
raffi

私にとって、この問題は次の条件下で修正されました。

環境:

  • VirtualBoxバージョン6.0.4r128413
  • Vagrantバージョン2.2.3

手順:

ターミナルまたはコマンドライン(cd)からプロジェクトディレクトリに移動し、次のコマンドを実行します。

  1. vagrant plugin install vagrant-vbguestはVagrant VB Guest Pluginをインストールします

  2. vagrant up

vboxsfが利用できないというエラーが表示された場合。その後、VirtualBox Guest Additionsが正しくインストールされていない可能性があります。以下のコマンドが問題を解決することを願っています。

vagrant ssh
Sudo yum -y install kernel-devel
Sudo yum update -y
exit
vagrant halt
vagrant up --provision
1
arifktk

タイプを削除:Homestead.yamlから「nfs」を修正しました。 10、Vagrant 1.9.7、laravel 5.4、ホームステッドで勝利。

1

私にとっては、ゲストシステムのリブートが続く次のコマンドが役立ちました。

cd /opt/VBoxGuestAdditions-*/init  
Sudo ./vboxadd setup

私は解決策を見つけました こちら 。この投稿を参照するには、コマンドをトリガーする前にvboxaddを停止する必要があります(vboxaddが何なのかわからないので、そうしませんでした)。

0
siddhartino

私とほぼ同じ問題でここに着陸した人のために、以下が解決策です

TLDR

  • system is currently not set up to build kernel modulesが原因でVirtualBoxゲストが失敗する
  • 解決策はkernel-headers.x86_64 0:3.10.0-862.9.1.el7をアンインストールすることです
  • 次に、kernel-devel-3.10.0-327.el7.x86_64をインストールします

溶液

  1. vagrant ssh

  2. Sudo rpm -e kernel-devel-3.10.0-862.9.1.el7.x86_64

  3. Sudo wget ftp://mirror.switch.ch/pool/4/mirror/scientificlinux/7.0/x86_64/updates/security/kernel-devel-3.10.0-327.el7.x86_64.rpm //ファイルをダウンロードする

  4. Sudo rpm -Uvh kernel-devel-3.10.0-327.el7.x86_64.rpm //ステップ3でダウンロードしたファイルを使用

  5. exit

  6. vagrant reload

詳細:問題

  1. vagrant upを行うが、同様のエラーで失敗する

コマンドからのエラー出力は次のとおりです。

/sbin/mount.vboxsf:次のエラーでマウントに失敗しました:No such device

  1. ログをさらに読むと、キーワードの下に気づきます

Virtualbox Guest Additions 5.2.16のインストール-ゲストバージョンは5.1.10

VirtualBox Guest Additionsのインストール中にエラーが発生しました

現在、このシステムはカーネルモジュールをビルドするように設定されていません。

現在のカーネルに一致するLinuxカーネルの「ヘッダー」ファイルをインストールしてください

ヘッダーを含むパッケージは、おそらくkernel-devel kernel-devel-3.10.0-327.el7.x86_64です。

  1. さらにログを読む

パッケージkernel-headers.x86_64 0:3.10.0-862.9.1.el7がインストールされます

パッケージkernel-devel-3.10.0-327.el7.x86_64が利用できません。

  1. 私のゲストは、kernel-devel-3.10.0-327.el7.x86_64が必要です

詳細:私の環境

  • お弁当/centos-7.2
  • vagrantバージョン:2.0.4
  • 仮想ボックスバージョン:5.2.16

ソース

0
Asip Asipo