Comment exécuter un invité 64 bits dans VirtualBox?

45

J'aimerais disposer d'un environnement de test Ubuntu 11.04 64 bits. Lorsque j'essaie de démarrer le CD d'installation Ubuntu 11.04 64 bits dans VirtualBox, le message suivant est affiché par VirtualBox:

L'accélération matérielle VT-x / AMD-V a été activée, mais n'est pas opérationnelle. Votre invité 64 bits ne parviendra pas à détecter un processeur 64 bits et ne pourra pas démarrer.

Veuillez vous assurer que vous avez activé correctement VT-x / AMD-V dans le BIOS de votre ordinateur hôte.

Qu'est-ce que je fais mal?

Détails:

  • VBox.log , ubuntu-test.vbox et / proc / cpuinfo .
  • Noyau: Linux aux 2.6.38-8-generic # 42-Ubuntu SMP Mon 11 Avril 03:31:24 UTC 2011 x86_64 x86_64 x86_64 GNU / Linux
  • Le paramètre Virtualization du BIOS est défini sur Enabled.
ændrük
la source
6
S'est avéré être un bug dans mon BIOS. Une solution de contournement est disponible. J'accepte la réponse de Chrissss car cela devrait fonctionner dans la plupart des cas.
ændrük

Réponses:

46

Pour pouvoir exécuter un système 64 bits dans une VirtualBox, vous avez besoin d'un processeur prenant en charge la virtualisation. AMD appelle cette fonction AMD-V, Intel utilise VT-x. La Wikipedia explique cela plutôt bien. Quelques processeurs Pentium-4 pouvant exécuter un système d'exploitation 64 bits, mais n'offrent pas cette technologie VT-x. Vous pouvez vérifier votre système en ...

$ egrep '(vmx|svm)' /proc/cpuinfo
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni monitor ds_cpl vmx cid cx16 xtpr lahf_lm
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni monitor ds_cpl vmx cid cx16 xtpr lahf_lm

Si vous n'obtenez aucune sortie, vous ne pourrez pas exécuter un système d'exploitation 64 bits en tant qu'invité dans votre VirtualBox. Mais n'oubliez pas de vérifier les paramètres de votre BIOS. Vous pourrez peut-être activer ces fonctionnalités AMD-V / VT-x dans le BIOS de votre ordinateur.

Et enfin, il y a une case à cocher à l'intérieur de VirtualBox-Settings. Démarrez VirtualBox, sélectionnez la machine virtuelle sur laquelle vous voulez exécuter votre système d'exploitation 64 bits et accédez aux paramètres de cette machine virtuelle. Recherchez "Paramètres -> Système -> Accélération" et assurez-vous que "Activer VT-x / AMD-V" est activé.

Chrissss
la source
1
Virtual Box exécute des invités 64 bits sur des hôtes 32 bits lorsque le CPU peut gérer la virtualisation et que l'ACPI d'E / S est défini.
Takkat
@Takkat, hors sujet, mais exécuter 64-mais l'invité n'est-il pas productif?
Oxwivi,
5
@ Oxwivi: pas si vous en avez besoin pour tester des applications: P / offtopic
Takkat
4
De nombreux BIOS contiennent des bogues liés au paramètre enable VT-x / AMD-V. Autrement dit, ils diront que c'est activé mais ils l'éteindront de manière aléatoire (par exemple, après la suspension et la reprise, ou les redémarrages ultérieurs). Vérifiez les mises à niveau du BIOS si vous avez des problèmes.
thomasrutter
2
Je ne peux même pas accéder à l'onglet "Accélération", il est estompé. Devinez que cela signifie que c'est au niveau du matériel? Regardez le BIOS, mais ceci est mon ordinateur de travail et je ne veux pas vraiment faire ça. C'est un quad core i5 avec Windows 64 bits; étrange qu'il ne soit pas pris en charge lorsque mes 2 ordinateurs i5 fonctionnent correctement avec des boîtes vagabondes 64 bits.
Kenmore
15

Assurez-vous d'avoir sélectionné la version 64 bits de votre distribution Linux dans l'Assistant lors de la création de l'invité. J'ai eu le même problème, mais il a été résolu en définissant l'option correcte à la "version" de la distribution.

Même lorsque vous démarrez une image ISO 64 bits, elle ne fonctionnera pas tant que je n'aurai pas défini cette option ( Général -> Basique -> Version ).

Ensuite, vous devriez pouvoir activer VT-x et I / O Apic.

erm3nda
la source
1
Fait intéressant, c'était la réponse qui m'a aidé.
Radek
Gah !!!!! Je vous remercie! VB devrait totalement détecter cela.
Greg Sheremeta
Virtual Box exécute-t-il des invités 64 bits sur un hôte 32 bits? avec votre solution ça marche?
chercheur
Non, les invités 64 bits nécessitent un hôte 64 bits, mais un hôte 64 bits peut héberger des robots 32 bits et 64 bits
Mattisdada
7

Activer la virtualisation dans le BIOS.

Si cela ne fonctionne toujours pas, laissez la machine arrêtée pendant quelques minutes.

Sanjaya Balasuriya
la source
1
Je ne comprends pas pourquoi je devais arrêter la machine pendant un moment. Mais ça a aidé. Merci!
lukassteiner
5

Vous devez activer l'IO APIC pour démarrer un système d'exploitation 64 bits. Au moins c'est ce que disent les docs , regardez le texte dans le grand carré rouge;).

Cela ne semble pas activé dans votre fichier .vbox:

<IOAPIC enabled="false"/>
Javier Rivera
la source
Merci, j'aurais dû voir cela plus tôt. Malheureusement, l'activation de cette fonctionnalité n'a pas modifié le comportement du système d'exploitation invité. Depuis, j'ai appris qu'il existe un préréglage "Ubuntu (64 bits)" dans lequel ce paramètre est activé par défaut, cependant. J'ai mis à jour ma question avec des informations plus récentes après avoir recréé la machine virtuelle à l'aide de ce préréglage.
ændrük
3

Selon VirtualBox, vous devriez:

  • mettre à jour votre BIOS si possible
  • retirer les modules KVM (hôte Linux)

3.1.4 contiendra une solution de contournement pour les personnes avec un BIOS cassé et aucune option pour le mettre à jour. Définissez la variable d'environnement VBOX_HWVIRTEX_IGNORE_SVM_IN_USE sur true:

set VBOX_HWVIRTEX_IGNORE_SVM_IN_USE=true on Windows
export VBOX_HWVIRTEX_IGNORE_SVM_IN_USE=true on Linux 

Cela indiquera à VirtualBox d’ignorer VERR_SVM_IN_USE et de continuer à utiliser AMD-V.
Notez que c'est un hack et dangereux si vous exécutez plusieurs hyperviseurs en même temps.

Fabby
la source
2

C'est un problème uniquement avec VirtualBox, pour moi c'est toujours un bug. Si vous installez le même système d'exploitation, utilisons le lecteur VMWare sur le même ordinateur, cela fonctionne parfaitement. Sans mettre à jour le BIOS.

Assez ennuyeux.

YAXAONE
la source
Je l'ai remarqué aussi. J'ai essayé VMWare avec Fedora 64 bits et Ubuntu 64 bits sans aucun problème. Mais pour VirtualBox, cela ne semble fonctionner qu'avec le 32 bits.
Archimedes Trajano
1

Pour un mobo Asus M5A88-M avec un processeur AMD FX6100, la sélection du BIOS appropriée est définie dans la "Configuration du processeur" (sous l'onglet Avancé), ACTIVER " Mode de la machine virtuelle sécurisée " et, comme indiqué précédemment, assurez-vous que "VBox" Paramètres -> Système -> Accélération "et assurez-vous que" Activer VT-x / AMD-V "est activé.

Pour autoriser plus d'un cœur avec cette configuration, vous devez déverrouiller les cœurs dans le BIOS (ou en appuyant sur 4 sur l'écran de démarrage Asus), mais je n'ai pas encore essayé de déverrouiller le cœur.

Bill V
la source
0

J'ai reçu Virtual Box 4.1.12 avec le pack d'extension correspondant installé sur le système d'exploitation Maya Xfce de Linux Mint 13 et installé Windows XP Home edition.

Avec l'aide de mon fils, les clés USB sont maintenant activées. Pour activer les clés USB, appuyez sur les touches Ctrl+ droite Homeet sélectionnez PériphériqueInstaller les ajouts d'invités , exécutez-le, il installe un certain nombre d'éléments sous Windows, laissez la case 3D décochée.

Lors du redémarrage de Windows, assurez-vous qu’il s’amorce en mode sans échec, connectez-vous en tant qu’administrateur (Windows), puis réexécutez l’installation d’invitations, cochez la case 3D et, une fois terminé, redémarrez la session. Arrêtez la session Windows XP, fermez VirtualBox, éteignez l'ordinateur. Redémarrez l'ordinateur, redémarrez la boîte virtuelle, redémarrez la session Windows XP, appuyez maintenant à droite Ctrl+ Home, PériphériqueUSB devrait fonctionner, vous devriez voir tous les périphériques USB connectés dans le menu déroulant.

J'ai pu connecter ma calculatrice TI (qui dispose de fonctionnalités très limitées sous Linux (probablement plus que ce que je sais)). Windows XP dans VirtualBox sur un ordinateur hôte Linux est la voie à suivre avec Windows.

Bill V
la source
0

si vous avez la capacité d'activer votre BIOS devrait être très facile, il suffit de démarrer dans le BIOS et de chercher "Virtualisation", il devrait être sous "Sécurité". Ensuite, activez simplement. :)

la krypsie
la source
0

Assurez-vous que vous avez correctement activé VT-x / AMD-V dans le BIOS de votre ordinateur hôte. Le paramètre Virtualiation du BIOS est défini sur Enabled.

J'ai eu le même problème. J'ai changé les paramètres du BIOS pour activer la virtualisation VT-x sur mon Lenovo. Après cela, la machine virtuelle a déclaré que, même si elle était activée, je ne pouvais pas l'utiliser dans ma machine virtuelle. J'ai donc fini par supprimer ma machine virtuelle et en démarrer une nouvelle dans l'interface graphique d'oracle vm virtualbox. Celui-ci avait le VT-x activé dans les paramètres / système / onglet accélération sous la virtualisation matérielle.

utilisateur2962552
la source