web-dev-qa-db-fra.com

Comment supprimer une machine virtuelle dans l'état d'erreur GURU_MEDITATION?

Comment supprimer une machine VirtualBox avec l'état d'erreur GURU_MEDITATION? Est-ce suffisant de supprimer le répertoire alors que VirtualBox n'est pas en cours d'exécution?

ÉDITER: Après la publication, j'ai supprimé le répertoire entier vers lequel "Afficher dans le Gestionnaire de fichiers" accède.

Ça ressemble à:

Screenshot of Virtualbox Guru Meditation

Notez qu’il n’ya pas de courant, et que même supprimer est grisé. Je crois que c’est exactement la même chose qu’avant la suppression du répertoire.

EDIT 2: J'ai essayé d'extraire la ligne de commande après la suppression des fichiers. Il se bloque:

vboxmanage controlvm wmf-vagrant_1354733432 poweroff 0% ... 10% ... 20% ...

EDIT 3: Il ne parvient pas non plus à le désenregistrer de la ligne de commande:

VBoxManage unregistervm wmf-vagrant_1354733432 --delete VBoxManage: erreur: impossible d'annuler l'enregistrement de la machine 'wmf-vagrant_1354733432' tant qu'elle est est verrouillé VBoxManage: erreur: Détails: code VBOX_E_INVALID_OBJECT_STATE (0x80bb0007), composant Machine, interface IMachine, appelé Contexte nsISupports: "Annuler l'inscription (fDelete? (CleanupMode_T) CleanupMode_DetachAllReturnHardDisksOnly: (CleanupMode_T) CleanupMode_DetachAllReturnHardDisksOnly: (CleanupMode_T) VBoxManageMisc.cpp

59
Matthew Flaschen

Tuez le processus VBoxHeadless et exécutez " vagrant destroy "

Détruire vagabond et envoyer le signal de destruction avec la commande "killall" ressemble à ceci:

killall -9 VBoxHeadless && vagrant destroy

124
jonathan

Je frappe ce problème. Tout ce que j'ai lu recommande de toujours gérer les boîtes via Virtual Box et non d'accéder directement aux fichiers. Mais quand j'ai eu une boîte invalide, la commande unregistervm a refusé de la supprimer et vagrant destroy n'a pas fonctionné. En fin de compte, le processus suivant a fonctionné.

  1. Éliminez tous les processus VBox * en cours d'exécution
  2. Supprimez le dossier "boxname" du dossier "VirtualBox VMs".
  3. Editez le fichier "VirtualBox.xml" et supprimez la balise correspondant à la boîte invalide.

J'ai ensuite exécuté cette commande pour vérifier que la boîte était partie.

VBoxManage list vms

Après cela, j'ai pu créer un nouveau vm avec le même nom.

9
Will Glass

Si vous ne pouvez pas éteindre la machine à partir de l'interface graphique de VirtualBox, essayez à partir de la ligne de commande en utilisant la commande vboxmanage (VBoxManage sur OS X), par exemple:

vboxmanage controlvm NAMEOFVM poweroff

Changez NAMEOFVM avec le nom de la commande vboxmanage list vms.

puis annulez l'enregistrement et supprimez la machine virtuelle:

vboxmanage unregistervm NAMEOFVM --delete

Ou supprimez-le manuellement:

rm -fr ~/"VirtualBox VMs/NAMEOFVM"
6
kenorb

J'ai eu un VM qui s'est retrouvé dans un état similaire

$ vagrant up

Bringing machine 'tempu' up with 'virtualbox' provider...
==> mms: Checking if box 'hashicorp/precise64' is up to date...
==> mms: Resuming suspended VM...
==> mms: Booting VM...
There was an error while executing `VBoxManage`, a CLI used by Vagrant
for controlling VirtualBox. The command and stderr is shown below.

Command: ["startvm", "9fcf2203-d4b3-47a1-a307-61bfa580bd28", "--type", "headless"]

Stderr: VBoxManage: error: The machine 'temp-ubuntu' is already locked by a session (or being locked or unlocked)
VBoxManage: error: Details: code VBOX_E_INVALID_OBJECT_STATE (0x80bb0007), component Machine, interface IMachine, callee nsISupports
VBoxManage: error: Context: "LaunchVMProcess(a->session, sessionType.raw(), env.raw(), progress.asOutParam())" at line 592 of file VBoxManageMisc.cpp

J'ai cherché un processus appelé VBoxHeadless, mais il ne fonctionnait pas.

J'ai ensuite lancé ps et trouvé ce processus avec le même identifiant vm:

$ ps aux | grep -i virtualbox
user      63466   0.0  0.1  2523608   8396   ??  S     9:36am   0:02.67 /Applications/VirtualBox.app/Contents/MacOS/VBoxManage showvminfo 9fcf2203-d4b3-47a1-a307-61bfa580bd28 --machinereadable

Tuer ce processus a résolu le problème et VM a démarré correctement après l'exécution de vagrant up

2
Gianfranco P.

C'est un script que j'utilise quand je suis désespéré. Il efface autant de traces de VM de la machine que je peux trouver:

VBoxManage list runningvms | awk '{print $2}'  | xargs --no-run-if-empty -t -n1 -IXXX VBoxManage controlvm XXX poweroff                                                           
VBoxManage list vms | awk '{print $2}'  | xargs --no-run-if-empty -t -n1 VBoxManage unregistervm                                                                                  
killall -9 VBoxHeadless                                                                                                                                                           
rm -rf ~/Virtualbox\ VMs/* 
2
ianmiell

J'utilise Debian Wheezy sur un hôte multi-processeurs 64 bits. J'ai finalement réussi à le résoudre en en supprimant toutes les données de VirtualBox} (bien que vous n'ayez pas eu besoin de supprimer la boîte de base Vagrant):

  1. Fermer Virtualbox si en cours d'exécution
  2. Sudo apt-get remove --purge virtualbox
  3. Déplacez ou supprimez ~/.VirtualBox et ~/VirtualBox\VMs /. Si vous n'êtes pas sûr, sauvegardez-les dans un endroit sûr.
  4. Redémarrer.
  5. Réinstallez virtualbox.
  6. Utilisez virtualbox/vagrant comme d'habitude.

Il peut y avoir un moyen moins perturbant (par exemple, de ne supprimer que des parties de ces répertoires). Dans mon cas, heureusement, je n'utilisais qu'un seul VM à la fois.

1
Matthew Flaschen

Sur Windows 10, j'ai résolu ce problème en définissant les configurations de pare-feu par défaut.

J'espère que ça aide...

0
V1NNY

Dans mon cas, je voulais supprimer TOUTES les boîtes Vagrant que j'ai actuellement sur mon système par une ligne de commande. Je l'ai fait en:

$ vagrant box list | cut -f 1 -d ' ' | xargs -L 1 vagrant box remove -f --all

Bien sûr, après s’être assuré qu’aucun processus supplémentaire n’est associé:

killall -9 VBoxHeadless && vagrant destroy
No matching processes belonging to you were found
0
HMagdy