web-dev-qa-db-fra.com

VM dans la virtualbox est déjà verrouillé pour une session (ou en cours de déverrouillage)

Mon VM dans la virtualbox ne peut pas démarrer en raison de cette erreur. Je ne souhaite pas le détruire et le réinstaller, mais comment le récupérer?

Une erreur s'est produite lors de l'exécution de VBoxManage, une CLI utilisée par Vagrant pour contrôler VirtualBox. La commande et stderr sont illustrés ci-dessous.

Command: ["modifyvm", "319fcce3-e8ff-4b6f-a641-3aee1df6543f", "--natpf1", "delete", "ssh"]

Stderr: VBoxManage: error: The machine 'centos64_c6402_1454036461345_59755' is already locked for a session (or being unlocked)
VBoxManage: error: Details: code VBOX_E_INVALID_OBJECT_STATE (0x80bb0007), component MachineWrap, interface IMachine, callee nsISupports
VBoxManage: error: Context: "LockMachine(a->session, LockType_Write)" at line 493 of file VBoxManageModifyVM.cpp
67
zjffdu

Exécuter ceci sur la ligne de commande a déverrouillé la VM:

vboxmanage startvm <vm-uuid> --type emergencystop

<vm-uuid> est le numéro indiqué dans le message d'erreur: Command: ["modifyvm", "<vm-uuid>" [...]. Après cela, j'ai pu contrôler le VM (démarrer, arrêter, etc.). Utilisation de Virtualbox 4.1 sur Ubuntu.

111
Gonzalo Matheu

Ayant le même problème, j'ai constaté qu'il y avait un processus en cours d'exécution verrouillant la machine virtuelle:

501 79419 79323   0  2:18PM ??         0:39.75 /Applications/VirtualBox.app/Contents/MacOS/VBoxHeadless --comment default --startvm 1d438a2e-68d7-4ba2-bef9-4ea162913c1b --vrde config

Assurez-vous de ne pas avoir un processus bloqué pour essayer de démarrer la machine virtuelle:

ps -ef | grep -i "vbox"
30
Gergely Toth

Pour moi, je devais tuer le processus VboxHeadless.exe dans le gestionnaire de tâches. Je devais également m'assurer que l'invite CMD était ouverte en mode administratif.

11
jreed350z

Dans le gestionnaire de tâches Windows, j'ai mis fin à toutes les tâches liées à Virtual Box (vous pouvez voir qu'elles commencent par un V dans le gestionnaire de tâches tel que Vbox Headless.exe, etc.). Une fois que j'ai fait cela, j'ai pu faire disparaître cette erreur (les solutions ci-dessus 'vboxmanage startvm ... etc ...' ici ne fonctionnaient pas pour moi).

7
armyofda12mnkeys

J'ai trouvé cette réponse de @Gonzalez très intéressante

vboxmanage startvm <vm-uuid> --type emergencystop

Le seul problème étant qu'il ferme l'instance actuelle de ma machine virtuelle, au lieu d'utiliser modifyvm, vous pouvez utiliser controlvm si la machine virtuelle en cours est en cours d'exécution.

Par exemple:

 VBoxManage modifyvm <vm_name> --natpf1 "guestssh,tcp,,22,,2222"
 VBoxManage modifyvm <vm_name> --natpf1 delete "guestssh"

Devenir:

VBoxManage controlvm <vm_name> natpf1 "guestssh,tcp,,22,,2222"
VBoxManage controlvm <vm_name> natpf1 delete "guestssh"

Documentation complète ici https://www.virtualbox.org/manual/ch08.html#vboxmanage-controlvm

5
Erman

Si vous avez une fenêtre de paramètres ouverte pour cette zone dans l'interface graphique de VirtualBox, vous pouvez rencontrer cette erreur. Fermez simplement la fenêtre de configuration et réessayez.

4

Sudo pkill -9 VBox tue tout ce qui tourne autour de vbox

1
Jana

J'ai rencontré le même message d'erreur aujourd'hui:

>me@myhost:~$ ps -ef | grep -i "vbox"

me  3064     1  0 08:51 ?        00:00:00 /usr/lib/virtualbox/VBoxXPCOMIPCD

me  3089     1  0 08:51 ?        00:00:00 /usr/lib/virtualbox/VBoxSVC --auto-shutdown

me  3126  3089 27 08:51 ?        00:00:39 /usr/lib/virtualbox/VBoxHeadless --comment RHEL5 64-bit desktop --startvm e5c598d8-1234-4003-a7c1-b9d8af15dfe7 --vrde config

me  3861  3415  0 08:53 pts/1    00:00:00 grep --color=auto -i vbox*

La réponse de Gergely le résout parfaitement. Il s'est avéré que j'ai une crontab définie au redémarrage pour démarrer la machine virtuelle, ce qui a lancé le processus trois VBox illustré ci-dessus

me@myhost:~$ crontab -l

@reboot me /usr/bin/vboxmanage startvm "RHEL5 64-bit desktop" --type headless
1
X.X

La seule option qui a fonctionné pour moi a été de tuer tous les processus correspondant à ps axl | grep -i vbox.

0
Charles Thomas

Dans mon cas, la cause apparente était un adaptateur USB Ethernet qui avait été retiré après la suspension de la machine. Dans mon cas,

vboxmanage startvm <vm-uuid> --type emergencystop

n'a pas aidé. Au lieu de cela, j'ai reçu le message déroutant que

VBoxManage: error: The machine 'xyzzy' is not locked by a session

La véritable erreur a été révélée en exécutant

vboxmanage startvm <vm-uuid> --type gui

qui est revenu

VBoxManage: error: Nonexistent Host networking interface, name 'en9: USBPlug' (VERR_INTERNAL_ERROR)

Changer la configuration du réseau en une autre carte réseau a résolu le problème.

0
zeeMonkeez