Personalmente avevo lasciato perdere questa feature di VirtualBox dopo aver perso un'intera macchina virtuale proprio in occasione di un aggiornamento. Desideroso di verificare se nel frattempo ci fossero stati progressi nella loro affidabilità, ho rimesso alla prova gli snapshot; quanto state per leggere ne è il risultato.
Intanto: cosa sono gli snapshot?
Traducibile come “istantanea”, per chi viene dal mondo Windows sono l'analogo dei suoi “punti di ripristino”. Forniscono la possibilità di registrare un punto fermo, chiamiamolo così, della macchina virtuale, a cui poter tornare nel caso questa abbia problemi.
Ed ecco allora la seconda domanda: quando fare uno snapshot?
Prima appunto di una qualunque attività che temete possa compromettere il funzionamento della macchina virtuale. Per mostrarvi concretamente questa possibilità, vi farò vedere come utilizzare gli snapshot per metterci al sicuro da problemi durante l'aggiornamento di Ubuntu dalla versione 7.10 alla nuova 8.04. Creeremo insieme uno snapshot prima di procedere all'aggiornamento, così da poter tornare al punto pre-aggiornamento nel caso qualcosa andasse storto.
Prima di cominciare però una terza fondamentale domanda: quando NON utilizzare gli snapshot?
Per rispondere occorre capire prima come funzionano; tenete perciò a mente questa domanda, una possibile risposta la vedremo alla fine del post.
Ok, siamo pronti, solo un paio di raccomandazioni prima di iniziare:
- fate sempre il backup della macchina virtuale prima di seguire gli esempi del post;
- anche se sul momento vi sembra di non capire una parte del post, proseguite con la lettura fino in fondo e sopratutto, realizzate gli esempi, l'argomento infatti è “più difficile a dirsi che a farsi”.
Ricordate com'è la struttura dei file di una macchina virtuale? Noo? Allora rinfreschiamoci la memoria. Nella cartella
C:\Documents and Settings\nome utente\.VirtualBox\
trovate 2 sottocartelle, vediamole.
In Fig. 1 lato sinistro potete vedere la prima sottocartella,
Machines
, che contiene a sua volta tante sottocartelle quante sono le macchine virtuali. In questo caso ne sono visibili 3: CentOS 5.1
, Ubuntu 7.10
che è selezionata e visualizzata a destra, e Ubuntu 8.10
. In ognuna di queste è contenuto (Fig. 1, lato destro) il file NomeMacchinaVirtuale.xml
di configurazione della macchina virtuale (memoria, dischi, USB, cartelle condivise e via dicendo), e la sottocartella Logs
dei file di log della macchina virtuale (utili in caso di problemi con la macchina virtuale per capirne il motivo);Fig. 1
In Fig. 2 potete vedere la seconda sottocartella,
VDI
, contenente il file NomeMacchinaVirtuale.vdi
del disco rigido della macchina virtuale.Fig. 2
Abbiamo detto come lo scopo dello snapshot in questo esempio, è cautelarci da eventuali problemi di aggiornamento della distribuzione, pertanto lo snapshot lo faremo prima dell'aggiornamento, così da avere quel punto di ripristino a quando la macchina virtuale sicuramente funzionava ancora. Procediamo.
A macchina virtuale spenta, selezioniamola e clicchiamo in alto a destra sull'icona a forma di macchina fotografica (Fig. 3)
Fig. 3
Comparirà una finestra di dialogo (Fig. 4) nella quale inserire il Nome dello snapshot ed una Descrizione dello snapshot. Inserite quanto ritenete opportuno e per voi significativo, poi cliccate su OK per proseguire.
Fig. 4
In pochi istanti verrà creato lo snapshot (Fig. 5) e passandovi sopra il mouse, comparirà un tooltip con alcune utili indicazioni, compresi i dati che avete appena inserito in Fig. 4.
Fig. 5
Potete però notare anche una seconda voce, Stato attuale (Fig. 6), con il suo relativo tooltip. Per ora prendiamo atto che non vi è nessuna differenza, così vi è scritto, con Snapshot attuale; a capire cosa sono entrambi ci torneremo tra poco.
Fig. 6
Andiamo invece a vedere cosa è accaduto ai file della macchina virtuale dopo la creazione dello snapshot. Nella cartella
VDI
, quella che contiene il disco rigido della macchina virtuale, nulla è cambiato (Fig. 7), confrontate con Fig. 2 che è la situazione di partenza per rendervene conto.Fig. 7
Molto è cambiato invece nella cartella
Machines\Ubuntu 7.10
, quella che contiene i file di configurazione della macchina virtuale (Fig. 8). E' comparsa una nuova sottocartella, Snapshots
, contenente un file con un nome strano e dimensioni davvero esigue... per ora!Fig. 8
Ora che con lo snapshot abbiamo creato un punto sicuro a cui tornare in caso di problemi, procediamo con l'aggiornamento di Ubuntu 7.10 a Ubuntu 8.04 (in gergo si chiama “avanzamento di versione”), Fig. 9 e Fig. 10.
Fig. 9
Fig. 10
Terminato l'avanzamento di versione e riavviata la macchina virtuale per controllare che tutto sia andato bene, (controllate che l'integrazione guest-host funzioni, altrimenti reinstallate le VirtualBox Guest Additions), spegnetela pure. Ci accorgiamo così che ora Stato attuale risulta modificato (Fig. 11) e differisce da Snapshot attuale. Prendiamone atto e nulla più, non siamo ancora pronti per capire cosa sono, perciò andiamo avanti.
Fig. 11
Vediamo allora i corrispondenti cambiamenti a livello di file. Controllate intanto la cartella
VDI
: potete notare che tutto è rimasto invariato come in Fig. 7: ma allora dov'è stato salvato tutto l'aggiornamento di Ubuntu fatto dopo lo snapshot? Date un'occhiata alla cartella Snapshots
(Fig. 12). Il file che era di poche decine di kilobyte, ora è di quasi 6 GB!Lo schema di funzionamento degli snapshot di VirtualBox a questo punto si è rivelato.
Normalmente VirtualBox usa il file
nomeMacchinaVirtuale.vdi
all'interno della cartella VDI
come disco rigido della macchina virtuale. Quando viene creato lo snapshot, VirtualBox non aggiorna più questo file ma lo mette da parte come punto di ripristino dello snapshot appena creato: tutte le modifiche nella macchina virtuale (nel nostro caso l'aggiornamento di Ubuntu) da quel momento in poi vanno a finire nel nuovo file di Fig. 12.Fig. 12
Per capire ancora meglio il meccanismo creiamo un secondo snapshot (Fig. 13) e vediamo cosa accade ai file.
Fig. 13
Come la prima volta, nuovamente i precedenti file
.vdi
, sia il primo nella cartella VDI
che il successivo creato nella cartella Snapshots
, non vengono più toccati ma fanno da punto di ripristino per il rispettivo snapshot. Viene invece creato un nuovo file .vdi
(Fig. 14) nella cartella Snapshot
in cui, da quel momento in poi, verranno memorizzate tutte le modifiche fatte all'interno della macchina virtuale.Fig. 14
Bene, chiarito il meccanismo di funzionamento degli snapshot, direi di approfittarne per prenderci una pausa: vi voglio in forze quando nel prossimo post "VirtualBox snapshot (2a parte)" vedremo un utilizzo concreto di tutto ciò. :)
@:\>
Nessun commento:
Posta un commento
L'autore del commento si assume la totale responsabilità del suo contenuto. Commenti ritenuti offensivi o non attinenti potranno essere cancellati.