VirtualBox refuse de démarrer la VM: `La version de la structure d'assistance de l'appareil a changé`


17

VirtualBox a soudainement commencé à refuser de lancer des machines virtuelles existantes, ce qui apparaît dans le journal:

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

Comment resoudre le probleme?


Étrangement, j'ai eu ce problème lors du démarrage d'une machine mais pas des autres. La mise à niveau du pack d'extension fonctionnait toujours, mais j'ai oublié de vérifier l'ancienne version. Peut-être que Windows 10 s'appuie sur certaines fonctionnalités du nouveau pack d'extension, mais Linux ne le fait pas?
trysis

Réponses:


19

Il s'agit du comportement typique de VirtualBox après sa mise à niveau par Ubuntu pendant son exécution.

Solution:

Il devrait maintenant fonctionner avec n'importe quelle machine virtuelle qui fonctionnait auparavant.

En fait, le journal contient cette astuce très: If you have upgraded VirtualBox recently, please make sure you have terminated all VMs and upgraded any extension packs.


2
Vous n'aurez peut-être pas besoin de redémarrer Ubuntu. Après l'installation de l'extension, lancez votre VM et continuez.
KhoPhi

3
Si vous avez besoin de le faire fonctionner et que vous n'avez pas Internet, vous pouvez supprimer le pack d'extension FIle->Preferences->Extensionset définir le contrôleur USB sur 1.0, cela devrait vous permettre de démarrer (sans extensions).
rrosa

@rrosa: Intéressant! Pourriez-vous s'il vous plaît poster cela comme nouvelle réponse? Merci!
Nicolas Raoul

11

Si vous avez besoin de le faire fonctionner et que vous n'avez pas Internet, vous pouvez supprimer le pack d'extension:

FIle->Preferences->Extensions

Et définissez le contrôleur USB sur 1.1 dans la machine que vous souhaitez démarrer. Sélectionnez-le, puis:

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

Cela devrait vous permettre de démarrer. Vous n'aurez pas d'extensions disponibles, mais cela peut vous aider jusqu'à ce que vous obteniez Internet. Lorsque vous vous connectez, suivez la réponse de Nicolas Raoul


M'a permis de démarrer après avoir copié une machine virtuelle d'Ubuntu vers un hôte Windows. Les deux hôtes avaient installé le pack d'extension le plus récent.
user18099

0

Voici comment cela a fonctionné pour moi après la mise à niveau d'Ubuntu 15.10 vers Ubuntu 16.04:

  • Désinstaller VirtualBox sudo apt-get remove virtualbox
  • Désinstaller VirtualBox DKMS sudo apt-get remove virtualbox-dkms
  • Téléchargez la dernière version de Virtualbox sur https://www.virtualbox.org/wiki/Linux_Downloads
    (AMD64 pour Ubuntu 16.04, si vous êtes sur 64 bits. Sinon, choisissez i386)
  • Installez le package téléchargé sudo dpkg -i virtualbox-5.0_...

Vous pouvez maintenant exécuter VirtualBox (trouver dans le lanceur ou exécuter virtualbox) et toutes les machines virtuelles fonctionneront à nouveau!

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.