タイトルどおり。Vagrantを使っていて、VirtualBoxを更新したときに、expackの更新をし忘れるとvagrant upで以下のエラーが出る。
There was an error while executing `VBoxManage`, a CLI used by Vagrant for controlling VirtualBox. The command and stderr is shown below. Command: ["startvm", "c51dec44-2458-4ff4-9129-6304dce7405d", "--type", "headless"] Stderr: VBoxManage: error: The device helper structure version has changed. VBoxManage: error: If you have upgraded VirtualBox recently, please make sure you have terminated all VMs and upgraded any extension packs. If this error persists, try re-installing VirtualBox. (VERR_PDM_DEVHLPR3 _VERSION_MISMATCH) VBoxManage: error: Details: code NS_ERROR_FAILURE (0x80004005), component ConsoleWrap, interface IConsole
まぁ、ようはextpackを更新すれば良いのだが、たいていGUIを立ち上げてとかいう記事が多くて、毎度キレそうになる。
CUIでやるには以下の要領でやる
- インストール済みextpackの確認
VBoxManage list extpacks
Extension Packs: 1 Pack no. 0: Oracle VM VirtualBox Extension Pack Version: 5.0.16 Revision: 105871 Edition: Description: USB 2.0 and USB 3.0 Host Controller, Host Webcam, VirtualBox RDP, PXE ROM, Disk Encryption. VRDE Module: VBoxVRDP Usable: true Why unusable:
インストール済みの古いextpackを削除
vboxmanage extpack uninstall "Oracle VM VirtualBox Extension Pack"
- 要root権限
- 言われてみれば当然だが、エラーに権限がない等の文言はないので気付きにくい。
新しいextpackを用意
- https://www.virtualbox.org/wiki/Downloads
- "VirtualBox xx.xx.xx Oracle VM VirtualBox Extension Pack" -> "All supported platforms"
新しいextpackのインストール
VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-5.2.10.vbox-extpack
- こっちも要root権限