VirtualBox no puede registrar el disco duro ya existe

151

Creé un archivo de disco virtual VM_1_Ubuntu.vdi . Luego lo moví a otra carpeta. Traté de actualizar la configuración de VM (haga clic derecho en la máquina virtual -> configuración -> Almacenamiento -> pestaña Controlador SATA, ruta VM_1_Ubuntu.vdi ). Quería establecer un nuevo camino.

Dice No se puede registrar el disco duro ya existe

Yan Khonski
fuente

Respuestas:

220

Encontre una solucion

Archivo -> Virtual Media Manager -> Eliminado imágenes existentes (nota, las eliminé solo del registro).

Seguí estos pasos.

http://www.webdesignblog.asia/software/virtualbox-moving-vdi-file-re-linking-guest/#sthash.1QOHeiw5.dpbs

Después de eso, pude actualizar la ruta en la configuración de VM.

Yan Khonski
fuente
2
Si la unidad donde estaba almacenado el disco no está disponible, primero libere el disco (Ctrl + L) de la VM y elimine (Ctrl + D). De lo contrario, antes de liberar el disco, no podrá eliminarlo. Después de eso, siga los pasos en el enlace anterior o abra "Configuración" de la máquina virtual, vaya a "Almacenamiento", haga clic en "Agregar archivo adjunto", seleccione "Agregar disco duro" y "Elegir disco existente", luego seleccione el archivo vdi y usted están hechos.
Syed Nasir Abbas
1
debe eliminar todas las instantáneas para que el botón de eliminación no esté atenuado.
Rishi
150

Es posible cambiar el UUID en el archivo VDI usando el comando:

 VBoxManage internalcommands sethduuid <file.vdi>

Parece que este comando asigna un nuevo UUID "aleatorio" al archivo. Sin embargo, no hay mucha documentación al respecto.

El Empalador
fuente
2
Perfecto para mis necesidades (cambiar el tamaño de un disco duro virtual no funcionaba, sin moverlo).
shiri
3
VBoxManage es un exe que para mí estaba en "C: \ Archivos de programa \ Oracle \ VirtualBox", así que simplemente ejecuta desde una ventana cmd.
Giles
1
Esta es la solución ideal cuando tiene una imagen de sistema operativo base y desea hacer frente a la instalación de múltiples aplicaciones en copias de la base sin tener que cambiar la base en sí.
Jersey_Guy
Me ayudó a cambiar el tamaño de un disco
Zumteufel
Esta solución también resolvió una situación en la que había copiado la máquina virtual en otra ubicación, quité el original de VirtualBox e intentaba compactar el disco. El comando: $ VBoxManage modifymedium Windows \ 7 \ Professional.vdi --compact El error: VBoxManage: error: No se puede registrar el disco duro '/ Users / c / VirtualBox VMs / Windows 7 Professional / Windows 7 Professional.vdi' {a510ee0d- 2cef-47db-b25f-acae9e341d45} porque ya existe un disco duro '/ Volumes / ramdisk / Windows 7 Professional / Windows 7 Professional.vdi' con UUID {a510ee0d-2cef-47db-b25f-acae9e341d45}
Zahnon
27
  1. Seleccionar archivo de Oracle VM VirtualBox Manager
  2. Administrador de medios virtuales
  3. Elimine el archivo (resaltado en amarillo) de la pestaña Discos duros.
Syed Nasir Abbas
fuente
7

Si no hay posibilidad de eliminar o cambiar la ruta a un archivo de disco duro usando Virtual Media Manager (en mi caso), entonces:

  1. Abra los archivos ' .vbox' y ' .vbox-prev' (si existen) en cualquier editor de texto.
  2. Edite el atributo 'ubicación' del elemento 'Disco duro' en su ruta, por ejemplo: "d: /VM/VirtualBox/Win10/Win10.vmdk" ( captura de pantalla ).
Oleg Tatarchuk
fuente
4

En algunos casos, primero necesita liberar, luego eliminar y volver a agregar a través de Virtual Media Manager

Stefan Georgiev
fuente
3

1 - Abra los archivos '.vbox' y '.vbox-prev' (si existen) en cualquier editor de texto y reemplace el primer carácter del disco duro del disco duro (tome nota para revertir este cambio en el paso 6)

Ejemplo: nano /home/virtualbox/WindowsServer/WindowsServer.vbox

Cambio:

<HardDisks>
        <HardDisk uuid="{3ebaa9b6-8318-4b81-b853-8f30dd278bdc}" location="/home/virtualbox/WindowsServer/WindowsServer.vdi" format="VDI" type="Normal"/>

A:

<HardDisks>
        <HardDisk uuid="{2ebaa9b6-8318-4b81-b853-8f30dd278bdc}" location="/home/virtualbox/WindowsServer/WindowsServer.vdi" format="VDI" type="Normal"/>

2 - Reiniciar la máquina

4: detener la máquina virtual (si se inició)

5 - En terminal:

su vbox
cd /home/virtualbox/WindowsServer/
VBoxManage modifyhd WindowsServer.vdi --resize SIZE
exit
exit

cambie el TAMAÑO para un número en Megabytes, ejemplo 80000 (80GB)

6 - Abra de nuevo los archivos '.vbox' y '.vbox-prev' (si existen) en cualquier editor de texto y reemplace el primer carácter del disco duro con el valor original

Ejemplo: nano /home/virtualbox/WindowsServer/WindowsServer.vbox

Cambio:

<HardDisks>
        <HardDisk uuid="{2ebaa9b6-8318-4b81-b853-8f30dd278bdc}" location="/home/virtualbox/WindowsServer/WindowsServer.vdi" format="VDI" type="Normal"/>

A:

<HardDisks>
        <HardDisk uuid="{3ebaa9b6-8318-4b81-b853-8f30dd278bdc}" location="/home/virtualbox/WindowsServer/WindowsServer.vdi" format="VDI" type="Normal"/>

7 - Reiniciar la máquina

Lucas Catani
fuente
3

Realmente aprecio las sugerencias aquí. Los comentarios de Impaler y Oleg me ayudaron a armar mi solución.

Use la CLI de VBoxManage. Hay un comando modifymedium con un--setlocation opción.

Sugiero abrir la interfaz gráfica de usuario de VBox (en VM VirtualBox Manager 6.0)
- seleccione "Virtual Media Manager" (utilicé el menú Archivo)
- seleccione el botón "Información" para el disco que le da este error
- copie el UUID
Nota: eliminé el controlador desde la configuración "Almacenamiento" antes del siguiente paso.
- abra el símbolo del sistema y navegue hasta la ubicación del archivo .vdi.
Es una buena idea escribir VBoxMange para ver una lista de opciones, pero este es el comando que debe ejecutarse:

VBoxManage modifymedium[inserte aquí el tipo de medio] [UUID] --setlocation[ruta completa al archivo .vdi]

Finalmente, vuelva a conectar el controlador a cualquier VM, preferiblemente la que le gustaría arreglar.

C Marshall
fuente
0

La solución que funcionó para mí es la siguiente:

  1. Asegúrese de que VirtualBox Manager no se esté ejecutando.
  2. Haga una copia de seguridad de los archivos ~\.VirtualBox\VirtualBox.xmly ~\.VirtualBox\VirtualBox.xml-prev.
  3. Edite estos archivos para modificar la <HardDisks>...</HardDisks>sección para eliminar la entrada duplicada de <HardDisk />.
  4. Ahora ejecute VirtualBox Manager.

Ejemplo:

  <HardDisks>
    <HardDisk uuid="{38f266bd-0959-4caf-a0de-27ac9d52e3663}" location="~/VirtualBox VMs/VM1/box-disk001.vmdk" format="VMDK" type="Normal"/>
    <HardDisk uuid="{a6708d79-7393-4d96-89da-2539f75c5465e}" location="~/VirtualBox VMs/VM2/box-disk001.vmdk" format="VMDK" type="Normal"/>
    <HardDisk uuid="{bdce5d4e-9a1c-4f57-acfd-e2acfc8920552}" location="~/VirtualBox VMs/VM2/box-disk001.vmdk" format="VMDK" type="Normal"/>
  </HardDisks>

Tenga en cuenta en el fragmento anterior que las dos últimas entradas se refieren a la misma VM pero tienen uuid diferentes. Uno de ellos no es válido y debe eliminarse. Se puede averiguar cuál es inválido mediante hit y trial: primero elimine la segunda entrada e intente; Si no funciona, elimine la tercera entrada.

Sanjeev Sachdev
fuente
0

Después de luchar durante muchos días, finalmente encontré una solución que funciona perfectamente.

Mac OS abra la carpeta ~ / Library (en su directorio de inicio) y elimine la carpeta VirtulBox. ¡Esto eliminará todas las configuraciones y puede volver a iniciar la caja virtual!

Otros buscan la carpeta .virtualbox en su directorio de inicio. Eliminarlo y abrir VirtualBox debería resolver su problema.

¡¡Salud!!

Lasithds
fuente