가상 디스크의 UUID를 어떻게 변경합니까?


131

이미 존재하는 하드 디스크를 사용하여 Oracle VirtualBox로 새 가상 머신을 만들려고합니다. 기존 하드 디스크 파일 인 .vhd 파일을 선택하려고하면 UUID가 이미 존재하므로 가상 하드 디스크를 사용할 수 없다는 오류가 표시됩니다.

그래서 UUID를 변경하기 위해 다음 명령을 시도했습니다.

VBoxManage internalcommands sethduuid /home/user/VirtualBox VMs/drupal/drupal.vhd

이 오류가 발생합니다.

구문 오류 : 잘못된 UUID 매개 변수

이 문제를 어떻게 해결할 수 있습니까?


1
공백 문자가있는 경로는 이미 발견 한대로 큰 따옴표로 묶어야합니다.
AB

답변:


171

올바른 명령은 다음과 같습니다.

VBoxManage internalcommands sethduuid "/home/user/VirtualBox VMs/drupal/drupal.vhd"

가상 디스크의 경로에는 공백이 포함되므로 두 개의 매개 변수로 구문 분석되지 않도록 큰 따옴표로 묶어야합니다.


25
VirtualBox에 UI를 변경하거나 창을 변경하여 창을 변경할 수 있기를 바랍니다.
fedmich

1
파일 경로의 공간으로 인해 따옴표가 필요합니다.
Chris Stryczynski

VirtualBox UI가 이미 알려진 디스크를 열려고 할 때 새 UUID를 생성하는 옵션을 제공하면 좋을 것입니다. 솔직히 나는 실제로 디스크 관리자를 사용하지 않고 오히려 VirtualBox가 가상 디스크를 파일 경로로 처리하고 관리하고 추적하는 리소스처럼 취급하려고하지 않습니다.
jrh

34

다음은 나를 위해 일했습니다.

  1. 실행 VBoxManage의 internalcommands는 "VDI / VMDK 파일"sethduuid 두 번을 (처음으로 편리하게 UUID를 생성하는 그냥 대신 다른 UUID 생성 방법을 사용할 수 있습니다)

  2. 텍스트 편집기에서 .vbox 파일을 엽니 다

  3. UUID를가 발견 대체 UUID = "{...}"기계 는 sethduuid 실행할 때 UUID를 당신이있어 처음

  4. UUID를가 발견 대체 UUID = "{...} '저장 판 과의 이미지 UUID ="{} " 당신은 당신이 두 번째 시간을 sethduuid 실행했을 때받은 UUID와 (끝으로)


1
이 답변은 가상 머신을 복사하려는 사람 (나 포함)에게 더 도움이된다고 생각합니다.
cbuchart

1
궁금해-왜 기계 UUID를 변경해야 했습니까? 한 컴퓨터에서 다른 컴퓨터로 vmdk 디스크를 복사하려면 필요하지 않습니다.
올렉 Gryb

1
동일한 머신에서 가상 디스크를 복사하는 경우 머신 uuid를 변경해야합니다.
borchvm

1
내 경우에 완벽하게 작동했습니다-감사합니다! Machine UUID를 조정할 필요가 없었습니다.
벤코

1
@FabrizioBertoglio는 대답이 있기를 바랍니다. 그러나 해당 파일을 편집하려면 모든 종류의 vbox 서비스를 중지해야합니다. 그렇지 않으면 동일한 ole이됩니다. 또한 구성 파일 맨 아래에있는 SATA 하드 디스크 용 UUID <연결된 장치>가 구성 파일 맨 위의 하드 드라이브 섹션에있는 하드 디스크의 UUID와 일치하는지 확인하십시오. 이 작업을 수행하기 전에 <Hardware UUID = myMachineUUID>도 추가하려고합니다.
Ken

12

한 시스템에서 다른 시스템으로 디스크 (vmdk 파일)를 복사하고 사본에서 디스크의 UUID를 변경해야하는 경우 다른 응답에서 제안한대로 시스템 UUID를 변경할 필요가 없습니다.

디스크 이미지에 새 UUID를 지정하기 만하면됩니다.

VBoxManage internalcommands sethduuid your-box-disk2.vmdk
UUID changed to: 5d34479f-5597-4b78-a1fa-94e200d16bbb

이전 UUID를 * .vbox 파일의 두 곳에 새로 생성 된 UUID로 바꿉니다.

<MediaRegistry>
  <HardDisks>
    <HardDisk uuid="{5d34479f-5597-4b78-a1fa-94e200d16bbb}" location="box-disk2.vmdk" format="VMDK" type="Normal"/>
  </HardDisks>

그리고

    <AttachedDevice type="HardDisk" hotpluggable="false" port="0" device="0">
      <Image uuid="{5d34479f-5597-4b78-a1fa-94e200d16bbb}"/>
    </AttachedDevice>

그것은 VirtualBox ver에서 나를 위해 일했습니다. 5.1.8 Mac OS X El Capitan에서 실행


당신 말이 맞을 것입니다. 지시에 따라 하드 디스크 file -> Virtual Media Manager가 올바른 UUID로 시스템 설정과 시스템 설정 모두에 올바르게 표시 되더라도 UUID 쿼리 실패 오류가 계속 발생합니다
Fabrizio Bertoglio

사건이 무엇인지 잘 모르겠습니다. 위에서 설명한 것은 정확히 내가 한 일이며 VB 5.1.8이 설치된 Mac에서 나를 위해 일했습니다.
Oleg Gryb

나는 다음과 같은 단계에 따라 문제를 해결 한 : 1. re-installing virtual box using synaptic package manager다음 2. In the virtual box machine configuration, I did not disable the Floppy disk and EFI Setting. I kept them enabled.문제가 수정되었습니다.
Fabrizio Bertoglio

@OlegGryb 호스트 OS 및 게스트 OS에 따라 달라질 수 있습니다.
Ken

11

문제를 해결했지만 비슷한 문제가있는 다른 사람들의 이유를 여기에 게시합니다.

그 이유는 경로 (디렉토리 이름 VirtualBox VMs)에 명령을 구분 하는 공백이 있기 때문입니다 . 따라서 오류가 나타납니다.


11

MAC OS에 대한 답변을 웹에서 검색 했으므로 해결책은 다음과 같습니다.

cd /Applications/VirtualBox.app/Contents/Resources/VirtualBoxVM.app/Contents/MacOS/

VBoxManage internalcommands sethduuid "full/path/to/vdi"

1
정말 도움이되었습니다 !!
Addo Solutions

6

폴더 이름 중 하나에 공백이있어 명령이 실패합니다 (예 : 'VirtualBox VMs').

VBoxManage internalcommands sethduuid /home/user/VirtualBox VMs/drupal/drupal.vhd

폴더 이름 또는 파일 이름에 공백이 없으면 명령을 인용하지 않아도 (예 : 'VirtualBox VMs'를 'VBoxVMs'로 변경 한 후) 명령이 작동합니다

VBoxManage internalcommands sethduuid /home/user/VBoxVMs/drupal/drupal.vhd

4

이 질문이 오래되었지만 Windows 시스템의 가상 HDD에서 UUID를 변경하면 Windows가 디스크를 인식하는 것처럼 활성화되지 않은 시스템으로 간주하여 재 활성화를 요구합니다.


4

Windows x64 용 @ Al3x와 동일한 솔루션 cmd.exe:

cd %programfiles%\Oracle\VirtualBox

VBoxManage internalcommands sethduuid "full/path/to/.vdi"

이것은 디스크의 UUID를 무작위 화합니다. 전문가 팁 : Shift 키를 누른 상태에서 .vdi 파일을 마우스 오른쪽 단추로 클릭하고 "경로로 복사"를 선택 "full/path/to/.vdi"하여 cmd.exe에서 빠른 편집을 수행 한 다음 마우스 오른쪽 단추를 클릭하여 붙여 넣기하십시오.


2

원래 솔루션의 또 다른 대안 \은 공백 앞에 이스케이프 문자를 사용하는 것입니다 .

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