usar mac espaƱol descargar como caracteristicas virtualbox

mac - Reducir una imagen de disco vmdk Virtualbox



virtualbox windows 10 (3)

VirtualBox puede compactar (reducir el tamaño) de imágenes .vdi pero no es posible con imágenes de disco .vmdk . Pero podemos compactar archivos .vmdk si:

  1. despegar
  2. convertir a .vdi
  3. compacto
  4. convertir de nuevo a .vmdk
  5. Acoplar de nuevo a la máquina original

Así que intenté reducir mi imagen de VirtualBox con este script:

#/bin/bash VM_PATH=~/VirtualBox/ VMs cd "$VM_PATH" VM="$(ls ffnord-example_gc-gw0_* -d -1|head -n 1)" cd "$VM" VM_VDMK_NAME="$(ls *.vmdk -1|head -n 1)" VM_NAME="$VM_PATH/$VM/$VM_VDMK_NAME" echo reducing size of "$VM_NAME" ls -lah "$VM_NAME" set -x vboxmanage showvminfo "${VM}" vboxmanage storageattach "${VM}" --storagectl SATA --port 0 --device 0 --type hdd --medium none vboxmanage clonehd --format vdi "${VM_NAME}" /tmp/VM-disk.vdi vboxmanage closemedium disk "${VM_NAME}" --delete vboxmanage modifyhd /tmp/VM-disk.vdi --compact vboxmanage clonehd --format vmdk /tmp/VM-disk.vdi "${VM_NAME}" vboxmanage closemedium disk /tmp/VM-disk.vdi --delete vboxmanage storageattach "${VM}" --storagectl SATA --port 0 --device 0 --type hdd --medium 4/VMs/VM-disk1.vmdk

Adapté este script de crysol pero parece que esto no está funcionando en Ubuntu. El primer vboxmanage storageattach comienza con un error de inmediato:

VBoxManage: error: Could not find a controller named ''SATA''

Si intento "SATA Controller" lugar:

vboxmanage storageattach "${VM}" --storagectl "SATA Controller" --port 0 --device 0 --type hdd --medium none

Me sale este error:

VBoxManage: error: No storage device attached to device slot 0 on port 0 of controller ''SATA Controller'' VBoxManage: error: Details: code VBOX_E_OBJECT_NOT_FOUND (0x80bb0001), component SessionMachine, interface IMachine, callee nsISupports VBoxManage: error: Context: "DetachDevice(Bstr(pszCtl).raw(), port, device)" at line 381 of file VBoxManageStorageController.cpp

Si comento las líneas de vboxmanage storageattach , el script funciona bien, pero la VM resultante es del mismo tamaño que antes y ya no arranca.

Esta es la salida de vboxmanage showvminfo "${VM}"


Encontré una solution :

Primero dentro de la VM llene todo el espacio libre con ceros:

cat /dev/zero > zero.fill;sync;sleep 1;sync;rm -f zero.fill

En su host, instale vmware-vdiskmanager desde VMware Knowledge Base :

cd /tmp/ wget http://kb.vmware.com/selfservice/viewAttachment.do?attachID=1023856-vdiskmanager-linux.7.0.1.zip&documentID=1023856 unp 1023856-vdiskmanager-linux-7.0.1.zip mv 1023856-vmware-vdiskmanager-linux.7.0.1 /usr/bin/vmware-vdiskmanager chmod +x /usr/bin/vmware-vdiskmanager

Tenga cuidado, ya que tiene suficiente espacio libre en el disco antes de comenzar, necesita que el MV crezca hasta duplicarlo durante el proceso.

Luego comprímelo con:

/usr/bin/vmware-vdiskmanager -k ~/VirtualBox/ VMs/<virtual disk.vmdk>

Source


No pude conseguir que la solución rubo77s por encima de vmware-vdiskmanager funcionara, creo que tiene dependencias en vmware workstation o vmware player, ninguno de los cuales tengo, encontré el ejecutable y me dio errores.

Pude resolver esto usando su comando cero

cat / dev / zero> zero.fill; sync; sleep 1; sync; rm -f zero.fill

luego usando virtualboxes exportar a la herramienta .ova.

esto resultará en que los óvulos eliminen / comprimen el espacio a cero. entonces usted puede volver a importarlo.


No tuve que instalar VMWare ni volver a convertir a VMDK, así que utilicé

https://scotch.io/tutorials/how-to-create-a-vagrant-base-box-from-an-existing-one#toc-make-the-box-as-small-as-possible

Dentro del host:

sudo yum clean all sudo dd if=/dev/zero of=/EMPTY bs=1M sudo rm -f /EMPTY cat /dev/null > ~/.bash_history && history -c && exit

Luego, después de que el invitado se apaga:

$ vboxmanage clonehd --format vdi centos-7-1-1.x86_64.vmdk newdisk.vdi $ ls -lh -rwx------+ 1 Chloe None 39G Mar 26 14:52 centos-7-1-1.x86_64.vmdk -rwx------+ 1 Chloe None 22G Mar 26 15:01 newdisk.vdi

También permite la compactación posterior.

$ vboxmanage modifyhd newdisk.vdi --compact

Dentro de la GUI de VirtualBox, seleccioné "Elegir archivo de disco duro virtual" para seleccionar el nuevo archivo.