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
sdelete
ferramenta fornecida pela Microsoft. Executesdelete -c
no convidado para zerar o espaço livre em disco antes de compactar a imagem do disco virtual. Para Linux, use ozerofree
utilitário que suporta sistemas de arquivos ext2/ext3.
Responder2
Com respeito aoresposta original que tinha esta solução:
Na VM:
dd if=/dev/zero of=test.file
sync
rm test.file
Na máquina host:
VBoxManage modifyhd --compact your_image_path.vdi
Esta é a única solução que tentei que funciona. O zerofree
e 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.