やばいよやばい!!
中古でMac買ってvagrant環境構築して開発してたら、
共有フォルダの機能が効いていなかったようでvagrant reloadして全滅...(#^ω^)
正しくフォルダMountができていない状況のようでした。
なので、仮想環境の起動中は、内側からでも外側からであってもファイル設置が一切反映されず
いらいらと悲しさが溢れてきました(´・ω・)
特に /vagrant/ 配下に仮想環境側からファイルを置いておいたら絶対反映されない+vagrant reloadで全滅という現象。
解決策を見つけなくては...
概要
先に解決策
Vagrantでフォルダがmountできず、共有フォルダが役に立たなくなった時。
kernel-devel入れてyum update & vagrant 再起動してください。
1 2 3 |
sudo yum -y update kernel sudo yum -y install kernel-devel kernel-headers dkms gcc gcc-c++ sudo yum update -y |
これを仮想環境内で実行していったん仮想環境を出ます。
1 |
vagrant reload |
これだけ。
[vagrant-vbguest]を追加する方法が多いみたいだけど自分はこれだけじゃダメだった。
環境と使用したVagrantfile
環境
・iMac HighSierra
・Vagrant 1.8.1
Vagrantfile
使ったVagrantfileはこんな感じ
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
# -*- mode: ruby -*- # vi: set ft=ruby : HOST_NAME = "dev.machine" MACHINE_NAME = HOST_NAME Vagrant.configure(2) do |config| config.vm.box = "centos7.2" config.vm.host_name = MACHINE_NAME config.vm.network "forwarded_port", guest: 80, host: 8011 config.vm.network "forwarded_port", guest: 3000, host: 3010 config.vm.synced_folder "../workspace", "/vagrant" end |
設定事態にはなんの問題もないです。
よくある解決策
まずちらっとネットで調べてみると代表的な解決策が出てきました。
ドンドン実行していくよ。
vagrantを作り直してみる
-> 無意味でした。
yum update
yum upgrate
を実行する。
-> 無意味でした。
Vagrant, VirtualBoxのバージョンを上げる
-> 無意味でした。
VagrantをGuest Additionsにするプラグイン「vagrant-vbguest」を追加する。
-> 情報量も多く、一番期待したものの無意味でした。
1 2 3 |
$vagrant plugin install vagrant-vbguest $vagrant vbguest $vagrant reload |
多くのひとはこれで解決したのかな??
どこにも自分の解決には繋がらず、已む無しマシーンのなかに入って
色々イジイジ。。。。
updateしても意味ないしなぁ...
packageが足りないのかな..(´・ω・)
なんかログ出てないかなぁ..(´・ω・)
)はっ!!!
.......(´・ω・
1 |
/sbin/mount.vboxsf: mounting failed with the error: No such device |
これか...
デバイスのドライバやモジュールがインストールできなてい可能性!!
kernel-develをインストールしましょう。ついでに関連の物も入れます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
$ sudo yum -y update kernel Geladene Plugins: fastestmirror Loading mirror speeds from cached hostfile * base: ftp.iij.ad.jp * extras: ftp.iij.ad.jp * updates: ftp.iij.ad.jp Abhängigkeiten werden aufgelöst --> Transaktionsprüfung wird ausgeführt ---> Paket kernel.x86_64 0:3.10.0-693.21.1.el7 markiert, um installiert zu werden --> Abhängigkeit linux-firmware >= 20170606-55 wird für Paket kernel-3.10.0-693.21.1.el7.x86_64 verarbeitet --> Abhängigkeit dracut >= 033-502 wird für Paket kernel-3.10.0-693.21.1.el7.x86_64 verarbeitet --> Transaktionsprüfung wird ausgeführt .. . . . . |
よし、あとはkernel-develとかをインストールします。
1 2 |
sudo yum -y install kernel-devel kernel-headers dkms gcc gcc-c++ sudo yum update -y |
どうだ!!
これで仮想マシーンを再起動
vagrant reload
vagrantのファイル共有できたぁぁ!!
リアルタイムでファイル共有できないのは関連のパッケージが不足していたようですね。
プラグインを入れてたおかげで判明したよ。
じゃあね〜〜〜。
コメント
同様の問題で vagrant vbguest で解決できずに途方に暮れていたところ、こちらの記事に辿り着き、無事に解決致しました。感謝します。
お役に立ててよかったです(´・ω・`)
同様の問題で色々と調べてもなかなか解決できず困っていたところ、
こちらの記事のおかげで無事解決することができました。
本当に感謝しております。
いえいえ。
お役に立ててよかったです(´・ω・`)