Pregunta Cómo mover archivos de VirtualBox?


De manera predeterminada, VirtualBox almacena todos los datos en un directorio debajo del directorio de inicio. Sé cómo cambiarlo, pero ¿cómo puedo cambiar la ubicación de las imágenes existentes (sin editar VirtualBox.xml manualmente)?

Estoy trabajando en Windows y no quiero usar ningún enlace NTFS.


149


origen


Awww, iba a sugerir enlaces simbólicos (lo resuelven todo), pero has bloqueado esa idea ... :( - DMA57361
No confío en enlaces en Windows en absoluto. Si bien NTFS es capaz de hacerlo, Windows XP no sabe nada al respecto y ya tiene suficientes problemas. Puedo ser innecesariamente cobarde ... - maaartinus
Ah, sí, no los tocaría en XP. Pero el soporte en 7 es bastante sólido, aún tienes que compilarlo desde la línea de cmd, pero eso no es realmente una tarea ardua. No estoy seguro de Vista ... - DMA57361
Es aún peor, La versión XP de NTFS admite enlaces duros, pero estos no pueden abarcar volúmenes. Obviamente, quería mover los datos a una partición diferente. - maaartinus
Los enlaces duros no pueden nunca volúmenes de extensión, solo los enlaces simbólicos pueden (y se pueden usar para este tipo de cosas, mis carpetas de usuario están vinculadas simbólicamente a mi segundo HDD, por ejemplo). Pero, personalmente, todavía evitaría los enlaces duros en XP (incluso si fueran una opción). - DMA57361


Respuestas:


Si quieres MOVER toda tu máquina virtual a una ubicación completamente nueva, solo debes seguir estas 2 respuestas:

Copiando la publicación aquí:

  1. Cierre VirtualBox, haga una copia de seguridad de su archivo .VirtualBox \ VirtualBox.xml.
  2. Busque su carpeta existente "Virtualbox VMs" y copie (no mueva) toda la carpeta con los contenidos a su nueva unidad E:
  3. Ejecute VirtualBox, luego para cada VM a su vez:

    3.1 Haga clic con el botón derecho en el nombre de la máquina virtual y seleccione "Eliminar" en el menú emergente. Responda no a "¿Eliminar físicamente archivos?" pregunta.

    3.1b después de eliminar una máquina virtual de la interfaz de usuario, debe cerrar VirtualBox y   déjalo cerrado el tiempo suficiente para que la tarea de fondo VBoxSVC   tiempo de espera y terminar también. Entonces puedes iniciar la aplicación VirtualBox   de nuevo y use Machine | Add para volver a agregar las máquinas virtuales eliminadas en el anterior   paso.

    3.2 Seleccione la opción de menú Máquina | Agregar ..., navegue hasta la ubicación nueva de la máquina virtual en la unidad E :, y seleccione el archivo .vbox.

    3.3. Repita para cualquier máquina virtual restante.

  4. En File | Preferences, establezca la ruta predeterminada de la máquina a "E: \ VirtualBox VMs"
  5. Pruebe cada una de las máquinas virtuales. Solo cuando esté seguro de que todos funcionan, elimine la carpeta que contiene la VM anterior, es decir, elimine "C: \ VirtualBox VMs".

126



Cuando hago esto para la máquina de clonación vinculada, no se pueden iniciar - Nam G VU
Esto funcionó para mí, aunque también necesitaba actualizar las rutas a cada HardDisk e imagen instantánea editando el .VirtualBox\VirtualBox.xml archivo, y haciendo un buscar / reemplazar. Además, solo moví el Machines y HardDisk carpetas, no todos los archivos contenidos en .VirtualBox, ya que esa es toda la configuración global y el registro y tal. - Dave Andersen
Para usuarios de Mac OS X, VirtualBox.xml está ubicado en ~/Library/VirtualBox/VirtualBox.xml. Las máquinas virtuales se encuentran en ~/VirtualBox VMs. - Siu Ching Pong -Asuka Kenji-
Virtual Box 4.3.0+ ha resuelto el "Último asunto importante", ni siquiera tuve que cerrarlo. instrucciones. - PCaetano
Quizás también podría agregar la línea de comando "versión". 1) Listar las máquinas virtuales existentes a través de VBoxManage list vms. 2) Junto a los nombres de las máquinas virtuales, dentro de las llaves, se hace referencia a sus UUID. Copia el de interés. Los detalles al respecto, se pueden recuperar a través de VBoxManage showvminfo UUID. 3) Eliminar el registro de la máquina virtual de interés a través de VBoxManage unregistervm UUID. 4) Mueva el directorio de la VM de interés. 5) Finalmente, registre la máquina a través de VBoxManage register NameOfVM.vbox - Obviamente, donde NameOfVM significa el nombre real de las máquinas virtuales .vbox archivo para ser registrado - Nikos Alexandris


Solo tenía un par de máquinas virtuales y descubrí que podía cambiar la ubicación de almacenamiento predeterminada para VirtualBox y luego clonar las de mi VM. Los clones se crearon en la nueva ubicación en la nueva HD donde los quería. Todo intacto, instantáneas y sin necesidad de reasignar la ubicación de los HD virtuales.


57



+1 Creo que este es el mejor método. VirtualBox mueve todo para usted en un pequeño paquete ordenado. - Dave Andersen
esta es la mejor manera, no se requiere edición manual de cfg - Bojan Bjelic
¿¿¿Cómo haces esto??? - FlipFloop
Esta realmente debería ser la respuesta aceptada - theV0ID
¿Podría publicar una lista de pasos seguidos? - sancho.s


El método más fácil no requiere eliminar sus máquinas virtuales y eliminar sus configuraciones.

  1. Copie su carpeta Virtualbox VMs a una nueva unidad.

  2. Ejecute Virtual Box Machine Manager. Ejecute el administrador de medios Archivo -> Virtual Media Manager

    2a. Elija la VM para mover el almacenamiento. Haga clic en el Lanzamiento botón y luego el retirar botón. En el siguiente diálogo, puede eliminar o mantener la unidad virtual. Cierre el administrador dejándolo en su Virtualbox Machine Manager.

  3. Seleccione la VM para la que acaba de eliminar los medios, haga clic en Configuraciones botón, haga clic en Almacenamiento sección. Agregue un controlador para los medios (SATA por lo general) y luego agregue un disco duro y elija el disco existente y seleccione el VD en su nueva ubicación.

  4. Repita para cada máquina que se está moviendo

Encienda su máquina virtual en la nueva ubicación para verificar. La próxima vez que visites el Administrador de medios virtuales, al pasar el mouse sobre la entrada de la máquina virtual le mostrará dónde se almacena el VD.

Asegúrese de cambiar las carpetas de instantáneas para que apunten a la nueva unidad si las está usando. Cada máquina tiene una configuración de carpeta de instantáneas y VM Manager tiene un Carpeta de máquina predeterminada instalándose Archivo -> Configuración eso necesita ser cambiado también.

Además, tuve que modificar la ruta en el archivo xml. Después de eso, funcionó a la perfección.

NOTA: Las cosas han cambiado un poco desde que esto fue escrito, ver la respuesta de Rob. Es extremadamente simple ahora.


36



Creo que esta es la forma más fácil de hacerlo. - Peter Perháč


En Mac, edite las rutas en este archivo:

/Users/pleddy/Library//VirtualBox/VirtualBox.xml

Eso fue fácil, ¡listo!


13



Él está usando Windows, y tampoco quiere editar VirtualBox.xml. - ChrisN
Esto fue útil para mí, sin embargo, ya que esta pregunta todavía es googleable si estás en mac. - NReilingh
Soy un usuario de mac y google me aterrizó aquí y esta solución es la más simple de todas, tiene mucho sentido y funcionó para mí :) - Mohit Singh
Estoy en Linux, y me gustó el sonido de esta respuesta, pero me sorprendió la advertencia en la parte superior del archivo. ¿Todavía recomendaría editar el XML directamente? La advertencia dice: ** NO EDITAR ESTE ARCHIVO. Si realiza cambios en este archivo mientras se ejecuta cualquier aplicación relacionada con VirtualBox, los cambios se sobrescribirán más tarde, sin que entren en vigencia. Use VBoxManage o la GUI de VirtualBox Manager para realizar cambios. ** - craq


MUCHO, MUCHO MÁS SIMPLE. 1) mudarse a una nueva ubicación 2) Haga clic con el botón derecho en eliminar del menú de la caja virtual 3) Seleccione 'agregar' desde el menú de la máquina 4) Encuentra el ícono azul de 8kb que tiene un tipo de 'definición de máquina virtualbox'. Selecciónelo y se agregará a su lista de caja virtual. haz doble clic en la máquina virtual y funciona.


12



Incluso más simple que esto es cuando desea volver a agregar las máquinas virtuales a VirtualBox, simplemente haga clic en *.vbox archivo en su carpeta. - Joel Mellon
Cómo cambian las cosas en tres años ... El deseo había sido tan fácil en aquel entonces. Se agregó una nota a mi respuesta para que vengan a ver esta. - Fiasco Labs
Esto realmente debería ser más arriba. Jugueteé y no pude hacer que funcionara. Simplemente eliminando los "inaccesibles" en la interfaz de usuario y luego haciendo doble clic en el archivo .vbox, vuelve a agregarlo usando la nueva ubicación. - wenbert
No funciona en el host de Linux. Obteniendo este error: La sesión de la máquina virtual se cerró antes de intentar encenderla. Código de resultado: NS_ERROR_FAILURE (0x80004005) Componente: Interfaz SessionMachine: ISession {7844aa05-b02e-4cdd-a04f-ade4a762e6b7} - Max N


Después de perder todo un día en este problema (usando Virtualbox 5.0.12 en Arch Linux), finalmente lo resolví de la manera que sugiere la respuesta de thomthom. Para aquellos que no están seguros sobre el procedimiento exacto, el comando que clona una máquina completa (incluidas las instantáneas) es:

VBoxManage clonevm --mode all --basefolder </new/path/> --register <VM_to_clone>

Obtener el nombre de la VM con

VBoxManage list vms

Si es necesario, cita la ruta y el nombre.

Finalmente, verifique si todo está bien y elimine el original.

Eso es todo, realmente. No es necesario preocuparse por los archivos xml o un editor hexadecimal. No es necesario usar una GUI tampoco.

http://www.virtualbox.org/manual/ch08.html#vboxmanage-clonevm


9



Esta fue la única respuesta que funcionó para mí. Debería estar más arriba. - Max N
VM_to_clone es el UUID o nombre de la VM. Con el comando dado (usando un UUID), se creó un directorio en /new/path/_<UUID>_ Cloney los archivos que contienen también se usaron _<UUID>_ Clone como nombre Para tener explícitamente un nombre más agradable, use el --name "Your preferred name here" bandera. - Rob W
... y para eliminar la máquina virtual original a través de la CLI, VBoxManage unregistervm UUID (UUID de VM que obtuvo a través de VBoxManage list vms, no use el nombre de VM porque si usa --name para preservar el nombre original, entonces tienes varias máquinas virtuales con el mismo nombre) - Rob W


Para hacer lo mismo que en Lucas Pottersky responder pero a través de la línea de comando (en Windows reemplace vboxmanage con VBoxManage.exe)

  1. Listar todas las máquinas virtuales:

    vboxmanage list vms
    

    o solo ejecutando:

    vboxmanage list runningvms
    

    que para cada máquina genera nombre y UUID.

    Haga los siguientes pasos para cada máquina que moverá.

  2. Con gracia lo apaga:

    vboxmanage controlvm UUID acpipowerbutton
    
  3. Anular el registro:

    vboxmanage unregistervm UUID
    
  4. Mueva la carpeta de la máquina virtual a la nueva ubicación.

  5. Regístrelo proporcionando una ruta a .vbox archivo:

    vboxmanage registervm /path/to/machine.vbox
    

4





Esto también funcionó para mí con la versión MacOS de VirtualBox (versión 4.1.12). Esperé 5-10 segundos para que VirtualBox salga antes de volver a lanzar. Busqué en el Monitor de actividad para asegurarme de que VBoxSVC hubiera salido correctamente.

Si no lo hace, obtendrá un error similar al siguiente (estoy copiando y pegando el mensaje de error de otra persona que proviene de Windows). Si obtiene este error, es simplemente porque no salió de VirtualBox o espera lo suficiente para que VBoxSVC se cierre.

Failed to open virtual machine located in E:/<path>/<machine_name>/<machine_name>.vbox.

Cannot register the hard disk 'E:\<path>\<machine_name>\Snapshots/{0ece4bff-9185-4cff-9069-b3d1f4536394}.vdi' {0ece4bff-9185-4cff-9069-b3d1f4536394} 
because a hard disk 'C:\<path>\<machine_name>\Snapshots/{0ece4bff-9185-4cff-9069-b3d1f4536394}.vdi' with UUID {0ece4bff-9185-4cff-9069-b3d1f4536394} already exists.

Result Code: E_INVALIDARG (0x80070057)
Component: VirtualBox
Interface: IVirtualBox {c28be65f-1a8f-43b4-81f1-eb60cb516e66}

2





En OS X con VirtualBox v4.3.14, todo lo que tenía que hacer era hacer doble clic en .vbox archivo desde la nueva ubicación, y abrió VirtualBox y lo agregó a la lista de máquinas virtuales disponibles.


2



Por favor no agregue "gracias" como respuesta. En su lugar, vote las respuestas que encuentre útiles. - Scott
Mi respuesta no es un 'gracias'. Edité la redacción para hacerlo más obvio. Gracias. - Tyson Phalp


Hay una ubicación de almacenamiento predeterminada en la configuración en VirtualBox: http://mattvelic.com/default-vm-location/

Ahora muerto. La máquina Wayback tiene el contenido:

http://web.archive.org/web/20131116130725/http://mattvelic.com/default-vm-location

... mira las Preferencias en el menú Archivo. ¡Mirad! El primer artículo en   la pestaña General es Carpeta de máquina predeterminada.    http://web.archive.org/web/20131116130725im_/http://54.225.211.105/wp-content/uploads/2012/11/VB_Preferences.png   Edité la ubicación para apuntar a mi unidad de almacenamiento, y rehice rápidamente   mi VM Esta vez, VirtualBox creó los archivos de la máquina y el VDI   en la ubicación correcta. La verdadera lección aquí es que a veces el   la solución no necesita ser técnica. Creo que como profesionales de TI,   tienden a pensar que la respuesta a un problema será complicada. Mantener su   ¡ojos abiertos para las soluciones obvias!


2



Este enlace ahora está muerto. Intenta no publicar enlaces como respuestas. Cuando mueren, SU queda con cruft para limpiar. - mrtsherman
actualizado con contenido de archive.org - Junto


No creo que esto sea posible.

Puede mover el VDI a la nueva ubicación, pero no creo que pueda evitar la modificación de XML. Como alternativa (pero de hecho es lo mismo que la edición XML), ¿crear una nueva máquina virtual con la GUI y elegir la imagen movida como el disco se adaptaría a sus necesidades?


1



Eché un segundo vistazo al xml y en realidad es muy simple. Crear una nueva máquina no es bueno, ya que me gustaría preservar mi configuración (no recuerdo lo que he cambiado, puede ser completamente irrelevante o no). - maaartinus