Virtualbox의 VM이 세션에 대해 이미 잠겨 있거나 잠금 해제 됨


82

이 오류로 인해 virtualbox의 내 VM을 시작할 수 없습니다. 삭제하고 다시 설치하고 싶지 않습니다. 어쨌든 복구 하시겠습니까?

VBoxManageVagrant에서 VirtualBox를 제어하는 ​​데 사용하는 CLI 를 실행하는 동안 오류가 발생했습니다 . 명령과 stderr은 다음과 같습니다.

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

답변:


135

명령 줄에서 실행하면 VM이 잠금 해제됩니다.

vboxmanage startvm <vm-uuid> --type emergencystop

<vm-uuid>오류 메시지의 번호는 어디에 있습니까 Command: ["modifyvm", "<vm-uuid>" [...]? 그 후 VM (시작, 중지 등)을 제어 할 수있었습니다. Ubuntu에서 Virtualbox 4.1 사용.


1
고맙습니다, 이것은 정말 나를 도왔습니다. docker의 공유 폴더와 관련하여 몇 가지 문제가 있습니다. 공유 폴더를 삭제할 수 없습니다 (오류 : 'ourspends'라는 이름의 공유 폴더를 찾을 수 없습니다). 또한 생성시 이미 존재한다고 표시되었습니다 ( '/에 매핑 된'ourspends '공유 폴더를 만들 수 없습니다. home / relu / projects / ourspends '(VERR_ALREADY_EXISTS))
Relu Mesaros

정확히 어디에서 실행합니까? "vboxmanage"명령은 호스팅 시스템의 VBox 소프트웨어와 관련이 있고 VM 자체가이를 인식하지 못하기 때문에 분명히 이것은 VM 자체 내에서가 아닙니다. 반면에이 명령은 내 호스팅 컴퓨터 (제 경우에는 Windows 10)에서도 알 수 없습니다. 그럼 ...이 명령을 실행하려면 무엇을해야합니까?
TheCuBeMan

Linux를 사용하는 터미널에서 실행했습니다. Windows에서는 명령 프롬프트 (cmd)에서 실행할 수 있다고 생각합니다. 그것은 버추얼 4.1 테스트되었습니다
곤잘로 Matheu을

4
사용 VBoxManage -nologo 목록 VMS 당신의 VM이-UUID 알아
야콥

3
Windows의 경우 전체 경로가 필요하므로 실행"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" <vm-uuid> --type emergencystop
Felix Eve

35

동일한 문제가 발생하여 실제로 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

VM을 시작하려는 프로세스가 중단되지 않았는지 확인하십시오.

ps -ef | grep -i "vbox"

이것은 나를 위해 일했습니다. 나는 ps -ef 문에 의해 반환 된 모든 프로세스를 종료 한 다음 "vagrant destroy"가 다시 작동했습니다.
thebiggestlebowski

13

나를 위해 작업 관리자에서 VboxHeadless.exe 프로세스를 종료해야했습니다. 또한 CMD 프롬프트가 관리 모드에서 열려 있는지 확인해야했습니다.


Linux를 사용하여 나를 위해 일했습니다. 실행중인 다른 모든 VM도 정상적으로 종료하도록 조언합니다 ( ps aux | grep box터미널에있는 경우 사용할 수 있음 ).
Dan


10

@Gonzalez의 답변이 매우 흥미 롭다는 것을 알았습니다.

vboxmanage startvm <vm-uuid> --type emergencystop

유일한 문제는 내 VM의 현재 인스턴스를 종료하므로 현재 VM이 실행중인 경우 modifyvm사용 controlvm하는 대신 사용할 수 있습니다 .

예를 들면 :

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

지다:

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

전체 문서는 여기 https://www.virtualbox.org/manual/ch08.html#vboxmanage-controlvm


7

Windows 작업 관리자에서 Virtual Box와 관련된 모든 작업을 종료했습니다 (Vbox Headless.exe 등과 같은 작업 관리자에서 V로 시작하는 것을 볼 수 있습니다). 일단 그렇게하면이 오류가 사라질 수있었습니다 (위의 'vboxmanage startvm ... etc ...'솔루션이 저에게 효과적이지 않았습니다).


4

VirtualBox GUI에서 해당 상자에 대한 설정 창이 열려 있으면이 오류가 발생할 수 있습니다. 설정 창을 닫고 다시 시도하십시오.


1

오늘도 같은 오류 메시지가 나타납니다.

>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*

Gergely의 대답은 완벽하게 해결합니다. 위에 표시된 세 가지 VBox 프로세스를 시작한 가상 머신을 부팅하기 위해 재부팅시 crontab이 설정되어 있음이 밝혀졌습니다.

me@myhost:~$ crontab -l

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

0

나를 위해 일한 유일한 옵션은 ps axl | grep -i vbox와 일치하는 모든 프로세스를 종료하는 것입니다.


0

필자의 경우 명백한 원인은 컴퓨터를 일시 중단 한 후 제거 된 USB 이더넷 어댑터였습니다. 나의 경우에는,

vboxmanage startvm <vm-uuid> --type emergencystop

도움이되지 않았습니다. 대신 혼란스러운 메시지를 받았습니다.

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

진정한 오류는 실행으로 밝혀졌습니다.

vboxmanage startvm <vm-uuid> --type gui

돌아온

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

네트워크 구성을 다른 네트워크 어댑터로 변경하면 문제가 해결되었습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.