vagrant起動時にエラーが発生し、共有ディレクトリがマウントされなくなりました。
発生したエラーは次のようなものになります。
C:\vagrant\centos7>vagrant halt ==> default: Attempting graceful shutdown of VM... $ vagrant up Bringing machine 'default' up with 'virtualbox' provider... ==> default: Clearing any previously set forwarded ports... ==> default: Clearing any previously set network interfaces... ==> default: Preparing network interfaces based on configuration... default: Adapter 1: nat ==> default: Forwarding ports... default: 22 => 2222 (adapter 1) ==> default: Booting VM... ==> default: Waiting for machine to boot. This may take a few minutes... default: SSH address: 127.0.0.1:2222 default: SSH username: vagrant default: SSH auth method: private key default: Warning: Connection timeout. Retrying... default: Warning: Remote connection disconnect. Retrying... ==> default: Machine booted and ready! ==> default: Checking for guest additions in VM... ==> default: Mounting shared folders... default: /vagrant => C:/vagrant/centos7 Failed to mount folders in Linux guest. This is usually because the "vboxsf" file system is not available. Please verify that the guest additions are properly installed in the guest and can work properly. The command attempted was: mount -t vboxsf -o uid=`id -u vagrant`,gid=`getent group vagrant | cut -d: -f3` vagrant /vagrant mount -t vboxsf -o uid=`id -u vagrant`,gid=`id -g vagrant` vagrant /vagrant The error output from the last command was: /sbin/mount.vboxsf: mounting failed with the error: No such device メッセージはそのままデバイスのマウントに失敗しましたと出ています。 エラーメッセージを元に情報を集めてみたところ理由が判明しました。 どうやらカーネルモジュールをアップデートした場合、GuestAdditionsを入れなおす必要があるようです。 先日、vagrantのcentoOSにvagrantを入れる際に「yum update」を実行しました。 このときにカーネルモジュールがアップデートしてしまったようです。 カーネルモジュールの入れなおしはvagrantのプラグインを使用すれば簡単にできるようです。 大元のホストに戻り、次のvagrantコマンドを実行します。 vagrant plugin install vagrant-vbguest
この後にvagrantを起動します。
すると自動でGuestAdditionsを入れなおしてくれます。
$ vagrant up Bringing machine 'default' up with 'virtualbox' provider... ==> default: Clearing any previously set forwarded ports... ==> default: Clearing any previously set network interfaces... ==> default: Preparing network interfaces based on configuration... default: Adapter 1: nat ==> default: Forwarding ports... default: 22 => 2222 (adapter 1) ==> default: Booting VM... ==> default: Waiting for machine to boot. This may take a few minutes... default: SSH address: 127.0.0.1:2222 default: SSH username: vagrant default: SSH auth method: private key default: Warning: Connection timeout. Retrying... default: Warning: Remote connection disconnect. Retrying... ==> default: Machine booted and ready! [default] GuestAdditions versions on your host (4.3.22) and guest (4.3.30) do not match. Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: ftp.riken.jp * epel: ftp.riken.jp * extras: ftp.riken.jp * updates: ftp.jaist.ac.jp Package kernel-devel-3.10.0-327.22.2.el7.x86_64 already installed and latest version Package gcc-4.8.5-4.el7.x86_64 already installed and latest version Package binutils-2.23.52.0.1-55.el7.x86_64 already installed and latest version Package 1:make-3.82-21.el7.x86_64 already installed and latest version Package 4:perl-5.16.3-286.el7.x86_64 already installed and latest version Package bzip2-1.0.6-13.el7.x86_64 already installed and latest version Nothing to do Copy iso file C:\Program Files\Oracle\VirtualBox\VBoxGuestAdditions.iso into the box /tmp/VBoxGuestAdditions.iso mount: /dev/loop0 is write-protected, mounting read-only Installing Virtualbox Guest Additions 4.3.22 - guest version is 4.3.30 Verifying archive integrity... All good. Uncompressing VirtualBox 4.3.22 Guest Additions for Linux............ VirtualBox Guest Additions installer Removing installed version 4.3.30 of VirtualBox Guest Additions... Copying additional installer modules ... Installing additional modules ... Removing existing VirtualBox DKMS kernel modules[ OK ] Removing existing VirtualBox non-DKMS kernel modules[ OK ] Building the VirtualBox Guest Additions kernel modules Building the main Guest Additions module[ OK ] Building the shared folder support module[ OK ] Building the OpenGL support module[FAILED] (Look at /var/log/vboxadd-install.log to find out what went wrong) Doing non-kernel setup of the Guest Additions[ OK ] Installing the Window System drivers Could not find the X.Org or XFree86 Window System, skipping. An error occurred during installation of VirtualBox Guest Additions 4.3.22. Some functionality may not work as intended. In most cases it is OK that the "Window System drivers" installation failed. ==> default: Checking for guest additions in VM... ==> default: Mounting shared folders... default: /vagrant => C:/vagrant/centos7 ==> default: Machine already provisioned. Run `vagrant provision` or use the `--provision` ==> default: to force provisioning. Provisioners marked to run always will still run.
この後にバーチャルホストにログインし、共有ディレクトリがマウントされていることが確認できました。