現在、私がvagrantを使用するときはいつでも、プロバイダーとしてlibvirt
を使用しようとします。デフォルトでVirtualBoxを使用したい。
vagrant-libvirt
がインストールされていません。
vagrant status
など、一部のコマンドが機能しないため、煩わしいです。
[florian@localhost local]$ vagrant status
The provider 'libvirt' could not be found, but was requested to
back the machine 'foobar'. Please use a provider that exists.
[florian@localhost local]$ vagrant status --provider=virtualbox
An invalid option was specified. The help for this command
is available below.
Usage: vagrant status [name]
-h, --help Print this help
vagrant's documentation によると、デフォルトのプロバイダーはvirtualbox
であり、VAGRANT_DEFAULT_PROVIDER
変数を使用すると、それをオーバーライドできます。
しかしながら、 VAGRANT_DEFAULT_PROVIDER
は空なので、virtualbox
にする必要がありますよね?変数をvirtualbox
に設定すると、再び機能します。したがって、Fedoraはデフォルトの変数をどこかで設定していると思います。
解決:
$ echo "export VAGRANT_DEFAULT_PROVIDER=virtualbox" >> ~/.bashrc
$ source ~/.bashrc
これは、この問題に遭遇した経験です。
vagrant up
を実行すると、これを得た
The provider 'libvirt' could not be found, but was requested to
back the machine 'default'. Please use a provider that exists.
上記のコマンドを試しました
echo "export VAGRANT_DEFAULT_PROVIDER=virtualbox" >> ~/.bashrc
source ~/.bashrc
次に、vagrant up
を実行しました
The provider 'virtualbox' that was requested to back the machine
'default' is reporting that it isn't usable on this system. The
reason is shown below:
VirtualBox is complaining that the kernel module is not loaded. Please
run `VBoxManage --version` or open the VirtualBox GUI to see the error
message which should contain instructions on how to fix this error.
VBoxManage --version
を使用すると、
The vboxdrv kernel module is not loaded. Either there is no module
available for the current kernel (4.0.4-303.fc22.x86_64) or it failed to
load. Please recompile the kernel module and install it
Sudo /etc/init.d/vboxdrv setup
を実行するように促され、問題が解決しました。