vagrant up したら mountエラーが出た

マウントができない

box add して vagrantfile修正して vagrant up したらmount エラー になってしまいました。マウントに失敗しているだけなので、仮想マシンは起動しているようです。

エラーログを読んでみると、要はvboxfファイルがないらしい?vboxfとは、バーチャルボックスの設定ファイルです。その、vboxf何故かない、つまりvboxfがマウントできないよ!と言っているのです

[sourcecode language=”plain”] Vagrant was unable to mount VirtualBox shared folders. This is usually
because the filesystem "vboxsf" is not available. This filesystem is
made available via the VirtualBox Guest Additions and kernel module.
Please verify that these guest additions are properly installed in the
guest. This is not a bug in Vagrant and is usually caused by a faulty
Vagrant box. For context, the command attempted was:

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

The error output from the command was:

mount: unknown filesystem type ‘vboxsf’
[/sourcecode]

 

マウントとはなんぞや?

うーん、この時点でマウントって何ですかというレベルだったので、調べてみました。マウントとは、例えば、リナックスはルートディレクトリ(/)を頂点に、ツリー形式のディレクトリの構造を持っていますよね。

/Users/自分のパソコンの名前/Desktop みたいな感じで。この、ツリー形式で連なったディレクトリのどこかに、新しくメモリ要員として外付けハードディスクを増やそうと考えたときに、行う作業のことをマウントと呼びます。わかりましたか??

で、vartualboxに置けるマウントとはなんぞや

vartualboxマウントするというのは、ホストOSとゲストOS間で簡単なやり取りを行えるようにすることを言います。下記の記事が参考になりますした。

[urlpreviewbox url=”https://vboxmania.net/content/%E5%85%B1%E6%9C%89%E3%83%95%E3%82%A9%E3%83%AB%E3%83%80%E3%81%AE%E3%83%9E%E3%82%A6%E3%83%B3%E3%83%88″/]

さて、マウントがわかったところで、解決策にはなりませんので続けましょう、下記の記事を読んでいると、どうやらvagrant-vbguestを使えば、なんか上手くいくらしいです vagrant-vbguest とはvagrant の plaginのことで、vagrant plagin とは、vagrantoをより一層便利にできるもので、コマンド一発でインストールできるようです

[urlpreviewbox url=”https://big1to.com/development-note/489″/]

vagrant-vbguest とは

下記を読んでなるほどー!と理解しました。そして同時に「 どうしてGuest Addition のバージョンを合わせるとvboxfがマウントできるようになるのかよくわからないけどな」という謎も深まりました。

多分vartualboxのboxにinstallされたosと、ホスロOSのバージョンの差異を埋めることによって、マウントできるようにするんだ!そういう意味だろう!

まあ、結局できてないけどな!

vagrant-vbguest のプラグインをいれておけば、自分の環境の VirtualBox のバージョンと Box にインストールされている Guest Addition のバージョンが違う場合に、VirtualBox のバージョンに合わせて最新化してくれるというものです。

 

失敗続の人生

ここまできて、新しいエラーが出て解決できませんでした。

この続きはまた別の記事にまとめ、リンクを貼ります

 

追記 2016-12-17

後日、もう一度vagrant up したら何故か普通にできたっぽく、謎です。

本当であれば下記のようなエラーログが出て居たはずなんですけど、何故でしょうね。

[sourcecode language=”plain”]

Vagrant was unable to mount VirtualBox shared folders. This is usually
because the filesystem "vboxsf" is not available. This filesystem is
made available via the VirtualBox Guest Additions and kernel module.
Please verify that these guest additions are properly installed in the
guest. This is not a bug in Vagrant and is usually caused by a faulty
Vagrant box. For context, the command attempted was:

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

The error output from the command was:

/sbin/mount.vboxsf: mounting failed with the error: No such device

[/sourcecode]

 

 

何故かもう一度やったら下記のように何事もなくrunしました

[sourcecode language=”plain”]

vagrant up
Bringing machine ‘default’ up with ‘virtualbox’ provider…
==> default: [vagrant-hostsupdater] Checking for host entries
==> default: Machine already provisioned. Run `vagrant provision` or use the `–provision`
==> default: flag to force provisioning. Provisioners marked to run always will still run.

[/sourcecode]

 
ssh接続も問題なし、謎は深まるばかりですね。

[sourcecode language=”plain”] vagrant ssh
Last login: Fri Dec 16 03:51:18 2016 from 10.0.2.2
—————————————————————-
CentOS 7.2.1511 built 2016-01-04
—————————————————————-
[/sourcecode]

追記 2016-12-18

やはり解決してなかった

一度がvagrant up で解決できたと思ってたのですが、ダメでした。

vagrant 再起動とかやると同じエラーが出るようです

なので、やっぱり違う記事に解決方法を載せます

はい、下記が解決方法です

準備中…

藤沢瞭介(Ryosuke Hujisawa)
  • りょすけと申します。18歳からプログラミングをはじめ、今はフロントエンドでReactを書いたり、AIの勉強を頑張っています。off.tokyoでは、ハイテクやガジェット、それからプログラミングに関する情報まで、エンジニアに役立つ情報を日々発信しています!

未整理記事