Comprimere lo spazio vuoto di un disco con VirtualBox
Come (quasi) ogni sistema anche i dischi virtuali “temono” la frammentazione.
Il problema che potrebbe capitare su una macchina virtuale di VirtualBox dove per esempio si ha impostato un disco da 40 GB nel formato ad espansione dinamica è che dopo svariati utilizzi nonostante che questo occupi virtualmente sempre per esempio solo 10 GB realmente ne occupi magari 30 GB.
Per comprimere il disco occorre innanzitutto “pulire” lo spazio vuoto.
Quindi se la nostra macchina virtuale ha un sistema linux possiamo usare lo strumento sfill nel pacchetto secure-delete, oppure semplicemente il comando cat:
1 2 |
cat /dev/zero > zero.file rm zero.file |
Mentre se abbiamo un sistema Windows è possibile utilizzare sdelete ( della ex Sysinternals ):
1 |
sdelete -z c: |
Poi si spegne la macchina virtuale e tramite VBoxManage si comprime:
1 |
VBoxManage modifyvdi myvmdisk.vdi compact |
Se per qualche motivo il disco è in un altro formato diverso dal VDI ( ad es. VMDK ) possiamo invece convertirlo, prima si scollega dalla macchina virtuale e poi si usa il comando:
1 |
VBoxManage clonehd myvmdisk.vmdk myvmdisk.vdi --format VDI |
Infine si ricollega alla macchina virtuale.