VirtualBox menolak untuk memulai VM: `Versi struktur pembantu perangkat telah berubah`

17

VirtualBox tiba-tiba mulai menolak meluncurkan VM yang ada, dengan ini muncul di log:

00:00:03.946244 HDA: Reset
00:00:03.946359 AssertLogRel /mnt/tinderbox/extpacks-5.0/src/VBox/Devices/USB/DevEHCI.cpp(4955) int ehciR3Construct(PDMDEVINS*, int, CFGMNODE*): PDM_VERSION_ARE_COMPATIBLE((pDevIns)->pHlpR3->u32Version, PDM_DEVHLPR3_VERSION)
00:00:03.946378 DevHlp=0xffe700f1  mine=0xffe700e1
00:00:03.946407 PDM: Failed to construct 'usb-ehci'/0! VERR_PDM_DEVHLPR3_VERSION_MISMATCH (-2871) - The device helper structure version has changed.
00:00:03.946421 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.
00:00:04.037170 NAT: zone(nm:mbuf_cluster, used:0)
00:00:04.037303 NAT: zone(nm:mbuf_packet, used:0)
00:00:04.037317 NAT: zone(nm:mbuf, used:0)
00:00:04.037328 NAT: zone(nm:mbuf_jumbo_pagesize, used:0)
00:00:04.037422 NAT: zone(nm:mbuf_jumbo_9k, used:0)
00:00:04.037488 NAT: zone(nm:mbuf_jumbo_16k, used:0)
00:00:04.037530 NAT: zone(nm:mbuf_ext_refcnt, used:0)
00:00:04.039388 VMSetError: /build/virtualbox-JETMa8/virtualbox-5.0.14-dfsg/src/VBox/VMM/VMMR3/VM.cpp(365) int VMR3Create(uint32_t, PCVMM2USERMETHODS, PFNVMATERROR, void*, PFNCFGMCONSTRUCTOR, void*, VM**, UVM**); rc=VERR_PDM_DEVHLPR3_VERSION_MISMATCH
00:00:04.039394 VMSetError: The device helper structure version has changed.
00:00:04.039394 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.
00:00:04.039582 ERROR [COM]: aRC=NS_ERROR_FAILURE (0x80004005) aIID={872da645-4a9b-1727-bee2-5585105b9eed} aComponent={ConsoleWrap} aText={The device helper structure version has changed.
00:00:04.039587 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)}, preserve=false aResultDetail=0
00:00:04.116659 Console: Machine state changed to 'PoweredOff'
00:00:04.338867 Power up failed (vrc=VERR_PDM_DEVHLPR3_VERSION_MISMATCH, rc=NS_ERROR_FAILURE (0X80004005))
00:00:04.349471 GUI: UIMachineViewNormal::resendSizeHint: Restoring guest size-hint for screen 0 to 2789x1563
00:00:04.349542 ERROR [COM]: aRC=E_ACCESSDENIED (0x80070005) aIID={7303a66d-433b-25a4-f9a8-fcadf87e0c2a} aComponent={DisplayWrap} aText={The console is not powered up}, preserve=false aResultDetail=0

Bagaimana cara mengatasi masalah?

Nicolas Raoul
sumber
Anehnya, saya mendapat masalah ini ketika memulai satu mesin tetapi tidak yang lain. Memutakhirkan paket ekstensi masih berfungsi, tetapi saya lupa memeriksa versi yang lama. Mungkin Windows 10 bergantung pada beberapa fitur dari paket ekstensi yang lebih baru tetapi Linux tidak?
trysis

Jawaban:

19

Ini adalah perilaku khas dari VirtualBox setelah telah ditingkatkan oleh Ubuntu saat sedang berjalan.

Larutan:

Sekarang seharusnya bekerja dengan VM apa pun yang bekerja sebelumnya.

Sebenarnya, log berisi sangat tip ini: If you have upgraded VirtualBox recently, please make sure you have terminated all VMs and upgraded any extension packs.

Nicolas Raoul
sumber
2
Anda mungkin tidak perlu memulai ulang Ubuntu. Setelah ekstensi terpasang, jalankan vm Anda dan lanjutkan.
KhoPhi
3
Jika Anda perlu menjalankan ini dan Anda tidak memiliki internet Anda dapat menghapus paket ekstensi dari FIle->Preferences->Extensionsdan mengatur pengontrol USB ke 1.0, yang memungkinkan Anda untuk boot (tanpa ekstensi).
rrosa
@rrosa: Menarik! Bisakah Anda memposting itu sebagai jawaban baru? Terima kasih!
Nicolas Raoul
11

Jika Anda perlu menjalankan ini dan Anda tidak memiliki internet Anda dapat menghapus paket ekstensi:

FIle->Preferences->Extensions

Dan atur pengontrol USB ke 1.1 di mesin yang ingin Anda boot. Pilih itu, lalu:

Machine->Settings->USB->Set it to 1.1 (or disable it)

Itu seharusnya memungkinkan Anda untuk boot. Anda tidak akan memiliki ekstensi yang tersedia, tetapi dapat membantu Anda sampai Anda mendapatkan internet. Saat Anda online, ikuti jawaban Nicolas Raoul

rrosa
sumber
Diizinkan saya untuk boot setelah menyalin VM dari Ubuntu ke host Windows. Kedua host memiliki paket Extension terbaru yang diinstal.
user18099
0

Beginilah cara kerjanya bagi saya setelah meningkatkan dari Ubuntu 15.10 ke Ubuntu 16.04:

  • Copot VirtualBox sudo apt-get remove virtualbox
  • Copot VirtualBox DKMS sudo apt-get remove virtualbox-dkms
  • Unduh versi terbaru Virtualbox di https://www.virtualbox.org/wiki/Linux_Downloads
    (AMD64 untuk Ubuntu 16.04, jika Anda menggunakan 64bit. Jika tidak, pilih i386)
  • Instal paket yang diunduh sudo dpkg -i virtualbox-5.0_...

Anda sekarang dapat menjalankan VirtualBox (temukan di peluncur atau jalankan virtualbox) dan semua mesin virtual akan bekerja lagi!

Finn
sumber