lunedì 19 dicembre 2011

VirtualBox: modificare i dischi rigidi virtuali con CloneVDI - 1a parte

I post sull'argomento sono di qualche anno addietro, il problema invece è sempre attuale. Ne avevo scritto in "VirtualBox: compattare dischi virtuali ad espansione dinamica – prologo" ed in quelli successivi, vi consiglio di leggerli per i particolari sia del problema che della soluzione.

In poche parole i dischi rigidi virtuali ad espansione dinamica di VirtualBox, quelli che inizialmente sono grandi poche centinaia di kB ma si espandono man mano serve più spazio nella macchina virtuale fino al massimo possibile stabilito in fase di creazione, sono appunto in grado di espandersi ma non sono poi in grado di ridursi nel caso venga liberato spazio al loro interno.

Un disco rigido virtuale ad espansione dinamica che abbia raggiunto i 50 GB di grandezza ad esempio, anche svuotato completamente continuerà ad occupare 50 GB come file vdi sull'host; una quantità immensa di spazio sprecato anche con gli attuali dischi rigidi.

Quel primo post che ho linkato sopra apriva la strada ad altri post specifici per guest Linux e Windows i quali illustravano a loro volta come risolvere il problema sullo specifico sistema operativo. Il tutto per la verità in maniera un po' macchinosa e dovendo accedere spesso alla linea di comando, in Linux addirittura per compilarsi il programma direttamente dal sorgente.

Le cose da allora sono alquanto cambiate ed in meglio: Don Milne (mpack nel forum utenti di VirtualBox) ha reso disponibile per Windows, ma grazie a Wine funziona perfettamente anche in Linux, un programma che non solo compatta i dischi rigidi virtuali, ma li può modificare in molti altri modi e tutto comodamente da interfaccia grafica.

Si tratta di CloneVDI.

CloneVDI: finestra principale del programma

Le funzionalità di CloneVDI sono davvero notevoli:
  • legge dischi  rigidi virtuali nei formati VDI, VHD, VMDK, Parallels HDD, RAW files e dischi fisici;
  • scrive il formato VDI specifico di VirtualBox;
  • si può usare sia da una comoda interfaccia grafica che da linea di comando;
  • compatta i dischi rigidi in un unico step e senza utility esterne. Prima occorreva uno step preliminare attraverso l'utility sdelete per Windows o zerofree per Linux; ne parlavo nel post citato all'inizio ed i seguenti di quella serie;
  • può aumentare la massima dimensione del disco rigido fissata al momento della sua creazione. Se avevamo deciso che il disco rigido virtuale ad espansione dinamica poteva crescere fino ad un massimo di 10 GB e successivamente ci accorgiamo che è troppo piccolo, con CloneVDI possiamo portare questa dimensione ad esempio a 40 GB, e la partizione al suo interno sarà ridimensionata di conseguenza;
  • può clonare un disco rigido assegnandogli lo stesso UUID (un identificativo unico che VirtualBox usa internamente per identificare ed associare in maniera unica il disco rigido alla rispettiva macchina virtuale) o generarne uno nuovo;
  • può analizzare alcuni elementi di un disco rigido virtuale come la mappa delle partizioni oppure il filesystem ospitato al suo interno alla ricerca di problemi;
  • nella clonazione di un disco rigido è più veloce del comando VBoxManage clonehd di VirtualBox (a detta dell'autore, non ho verificato);
  • dulcis in fundo, è open source. 
Che ne dite, vi piace quello che CloneVDI può fare per i vostri dischi rigidi virtuali? Si? Bene,  allora nel prossimo post "VirtualBox: modificare i dischi rigidi virtuali con CloneVDI - 2a parte" lo vedremo in azione e sono sicuro ne rimarrete favorevolmente colpiti.