Vagrantで共有フォルダがマウントできなかった時の解決法

エラー出た

さーて開発するぞーと思ってvagrant upッターンすると

以下の様なエラーが出た後に、

Building the VirtualBox Guest Additions kernel modules  
The headers for the current running kernel were not found. If the following  
module compilation fails then this could be the reason.  
The missing package can be probably installed with  
yum install kernel-devel-2.6.32-431.el6.x86_64

Building the main Guest Additions module[FAILED]  
(Look at /var/log/vboxadd-install.log to find out what went wrong)

以下の様な感じのエラーが出た。

default: /vagrant => /Users/p1ch_jp/Develop/hoge  
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

要はyum install kernel-devel-2.6.32-431.el6.x86_64がうまく行かなくて、それが原因で共有フォルダがマウントできなかったんだろうと言う気がする。(適当)

手動で入れる

仕方ないので手動でkernel-develとやらを入れる。

普通にvagrant sshは出来るっぽいのでsshで仮想マシンに接続する。

そしてsudo yum install http://vault.centos.org/6.4/cr/x86_64/Packages/kernel-devel-2.6.32-431.el6.x86_64.rpmでインストール。

設定を反映

あとは、一度exitで仮想マシンから抜けてvagrant reloadでリロードかけてあげるとあら不思議。 ちゃんとエラー吐かずに動きました。

ちゃんと共有フォルダ内のファイルも同期してるので解決っぽいです。