VirtualBox відмовляється запускати VM: `Версія структури помічника пристрою змінилася`


17

VirtualBox раптом почав відмовлятись від запуску існуючих віртуальних машин, і це відображається в журналі:

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

Як виправити проблему?


Як не дивно, я отримав цю проблему при запуску однієї машини, а не інших. Оновлення пакету розширень все ще працювало, але я забув перевірити стару версію. Можливо, Windows 10 покладається на деякі функції нової версії розширень, але Linux ні?
trysis

Відповіді:


19

Це типова поведінка VirtualBox після того, як він був оновлений Ubuntu під час роботи.

Рішення:

  • Зупиніть VirtualBox
  • Завантажте останній пакет розширень на https://www.virtualbox.org/wiki/Downloads (він однаковий для всіх платформ)
  • Встановіть розширення
  • Перезапустіть Ubuntu

Тепер він повинен працювати з будь-яким ВМ, який працював раніше.

На насправді, журнал містить цей самий кінчик: If you have upgraded VirtualBox recently, please make sure you have terminated all VMs and upgraded any extension packs.


2
Можливо, вам не знадобиться перезапускати Ubuntu. Після встановлення розширення запустити вм-во і перейти.
Хофі

3
Якщо вам потрібно запустити цю програму, і у вас немає Інтернету, ви можете вийняти пакет розширень FIle->Preferences->Extensionsі встановити USB-контролер на 1,0, що дозволить вам завантажуватися (без розширень).
rrosa

@rrosa: Цікаво! Чи можете ви опублікувати це як нову відповідь? Спасибі!
Ніколя Рауль

11

Якщо вам потрібно запустити це, а у вас немає Інтернету, ви можете видалити розширення:

FIle->Preferences->Extensions

І встановіть USB-контролер на 1,1 в машині, яку ви хочете завантажити. Виберіть його, а потім:

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

Це повинно дозволяти вам завантажуватися. У вас не буде доступних розширень, однак, можливо, ви отримаєте доступ до Інтернету. Коли ви знайдетесь в Інтернеті, слідкуйте за відповіддю Ніколя Рауля


Дозволено завантажуватися після копіювання VM з Ubuntu на хост Windows. Для обох хостів був встановлений останній пакет розширень.
user18099

0

Ось як це працювало для мене після оновлення з Ubuntu 15.10 до Ubuntu 16.04:

  • Видаліть VirtualBox sudo apt-get remove virtualbox
  • Видаліть VirtualBox DKMS sudo apt-get remove virtualbox-dkms
  • Завантажте останню версію Virtualbox за посиланням https://www.virtualbox.org/wiki/Linux_Downloads
    (AMD64 для Ubuntu 16.04, якщо ви працюєте на 64bit. Інакше виберіть i386)
  • Встановіть завантажений пакет sudo dpkg -i virtualbox-5.0_...

Тепер ви можете запустити VirtualBox (знайти в запуску або запустити virtualbox), і всі віртуальні машини будуть працювати знову!

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.