Como reduzir o tamanho da VM?

Como reduzir o tamanho da VM?

Eu tenho uma VM Virtualbox, com um .vdi que ocupa 49 GB na máquina host.

Posso ter usado tanto espaço dentro da VM uma vez, mas agora estou usando apenas cerca de 6 GB.

Eu tentei este comando para o virtualbox:

vboxmanage modifyhd /path/to/disk.vdi --compact

Começou a funcionar 0%..10.....100%. Mas realmente não aconteceu nada, o .vdi ainda tinha 49gb.

Então executo 'df -h' na VM e encontrei isto:

root@mypc# df -h
Filesystem                  Size  Used Avail Use% Mounted on
/dev/mapper/mypc-root       2.0T   38G  1.9T   2% /
udev                        1.3G  4.0K  1.3G   1% /dev
tmpfs                       502M  784K  501M   1% /run
none                        5.0M     0  5.0M   0% /run/lock
none                        1.3G  160K  1.3G   1% /run/shm
/dev/sda1                   228M   31M  185M  15% /boot
/home/someuser/.Private     2.0T   38G  1.9T   2% /home/someuser

Não sei por que está usando 38 GB lá.

Limpei a Lixeira, mas não ajudou.

Alguma idéia do que mais posso fazer?

A VM possui Ubuntu 12, com LVM criptografado e home (esse é o diretório .Private). O anfitrião tem o Windows 7.

ATUALIZAR

Consegui liberar espaço para/dev/sda1, mas não para/dev/mapper/mypc-root. Zerofree inicia e nunca termina, embora eu possa dizer que o disco parou de gravar porque para de fazer barulho depois de um minuto.

Aqui está a saída para 'df -ih'

root@mypc:/home/someuser# df -ih
Filesystem                 Inodes IUsed IFree IUse% Mounted on
/dev/mapper/mypc-root        128M  208K  128M    1% /
udev                         311K   495  310K    1% /dev
tmpfs                        314K   428  314K    1% /run
none                         314K     4  314K    1% /run/lock
none                         314K     7  314K    1% /run/shm
/dev/sda1                    122K   230  122K    1% /boot
/home/someuser/.Private      128M  208K  128M    1% /home/someuser

Responder1

Demanual:

Para que esta operação seja eficaz, é necessário que o espaço livre no sistema convidado seja primeiro zerado usando uma ferramenta de software adequada. Para convidados do Windows, você pode usar a sdeleteferramenta fornecida pela Microsoft. Execute sdelete -cno convidado para zerar o espaço livre em disco antes de compactar a imagem do disco virtual. Para Linux, use o zerofreeutilitário que suporta sistemas de arquivos ext2/ext3.

Responder2

Com respeito aoresposta original que tinha esta solução:

Na VM:

  1. dd if=/dev/zero of=test.file
  2. sync
  3. rm test.file

Na máquina host:

  1. VBoxManage modifyhd --compact your_image_path.vdi

Esta é a única solução que tentei que funciona. O zerofreee sfill(from secure-delete) não funciona na minha VM Debian (host do Windows 10).

Responder3

Acho que a essência do seu problema é que seu sistema de arquivos raiz ( /) tem 2 TB de tamanho. Com um sistema de arquivos tão grande, a sobrecarga relativamente pequena (inodes e outros) ainda é bastante grande (> 32 GB, no seu caso).

Se quiser reduzir seu disco virtual, você precisará primeiro reduzir seu sistema de arquivos raiz.

informação relacionada