2016-02-03 4 views
33

La mia VM in virtualbox non può essere avviata a causa di questo errore, non voglio distruggerlo e reinstallarlo di nuovo, comunque per recuperarlo?VM in virtualbox è già bloccato per una sessione (o sbloccato)

Si è verificato un errore durante l'esecuzione di VBoxManage, una CLI utilizzata da Vagrant per il controllo di VirtualBox. Il comando e lo stderr sono mostrati sotto.

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 

risposta

18

Avendo lo stesso problema che ho scoperto che c'era un processo in esecuzione in realtà il blocco del vm:

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 

Assicurarsi che non si dispone di un processo bloccato cercando di avviare il VM:

ps -ef | grep -i "vbox" 
+0

Questo ha funzionato per me. Ho ucciso tutti i processi restituiti dall'istruzione ps -ef e quindi "vagabondo distruggere" ha funzionato di nuovo. – thebiggestlebowski

1

ho incontrato lo stesso messaggio di errore oggi:

>[email protected]:~$ 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 risposta di Gergely lo risolve perfettamente. Si è scoperto che ho un crontab impostata al riavvio per avviare la macchina virtuale, che ha avviato il processo di tre VBox mostrato sopra

[email protected]:~$ crontab -l 

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

L'esecuzione di questo sulla riga di comando sbloccato il VM:

vboxmanage startvm <vm-uuid> --type emergencystop 

Dove <vm-uuid> è il numero nel messaggio di errore: . Successivamente sono stato in grado di controllare la VM (start, halt, etc). Utilizzo di Virtualbox 4.1 su Ubuntu.

+0

Grazie, questo mi ha davvero aiutato, ho avuto alcuni problemi riguardanti una cartella condivisa nella finestra mobile. Non è stato possibile eliminare la cartella condivisa (errore: Impossibile trovare una cartella condivisa denominata 'ourspends') e inoltre, al momento della creazione, diceva che esiste già (Impossibile creare una cartella condivisa 'ourspends' mappata a '/ home/relu/projects/ourspends '(VERR_ALREADY_EXISTS)) –

+0

Dove eseguo esattamente questo? Ovviamente, questo non è all'interno della VM stessa, poiché il comando "vboxmanage" si riferisce al software VBox sulla macchina host e la VM stessa non lo riconosce. D'altra parte, questo comando è sconosciuto anche alla mia macchina di hosting (nel mio caso, è Windows 10). Quindi ... di cosa ho bisogno per eseguire questo comando, allora? – TheCuBeMan

+0

L'ho eseguito su un terminale usando Linux. Immagino che in Windows possa essere eseguito in un prompt dei comandi (cmd). È stato testato con VirtualBox 4.1 –

6

In Task Manager di Windows, ho terminato qualsiasi attività relativa a Virtual Box (è possibile vedere che iniziano con una V in Task Manager come Vbox Headless.exe, ecc.). Una volta fatto ciò, sono riuscito a far sì che questo errore scomparisse (le soluzioni di "vboxmanage startvm ... etc ..." qui sopra non funzionavano per me).

-2

L'unica opzione che ha funzionato per me era quella di uccidere tutti i processi corrispondenti a ps axl | grep -i vbox.

3

Se si dispone di una finestra delle impostazioni aperta per quella casella nella GUI di VirtualBox, è possibile che si verifichi questo errore. Chiudi la finestra delle impostazioni e riprova.

0

Per me ho dovuto interrompere il processo VboxHeadless.exe nel task manager. Dovevo anche assicurarmi che il prompt di CMD fosse aperto in modalità amministrativa.