FOG: una soluzione centralizzata per la gestione delle immagini dei dischi fissi

Su IlSoftware.it abbiamo spesso presentato software che permettono di creare una copia di backup completa dell'intero contenuto del disco fisso o di singole partizioni.

Su IlSoftware.it abbiamo spesso presentato software che permettono di creare una copia di backup completa dell’intero contenuto del disco fisso o di singole partizioni. Tali prodotti si chiamano software di disk imaging e si occupano di creare una copia speculare delle informazioni memorizzate sugli hard disk o su altre unità. Alcuni di essi effettuano un monitoraggio del sistema in tempo reale mentre altri sono utilizzabili, ad esempio, da un “CD live“, da inserire all’avvio del personal computer. Grazie al supporto di boot, è possibile avviare un ambiente di lavoro a sé, evitando l’esecuzione del sistema operativo installato sul sistema in uso, e scegliere le unità disco oggetto dell’operazione di backup. I dati presenti nelle unità indicate vengono poi salvati sotto forma di un unico file d’immagine.
Tra tutti vari software disponibili sul mercato ricordiamo, ad esempio, Acronis TrueImage,CloneZilla, Macrium Reflect, Paragon Backup & Recovery e DriveImage XML.

Questa volta illustriamo il funzionamento di un software opensource, probabilmente poco conosciuto, che utilizza un approccio completamente differente. FOG, “a free computer cloning solution“, è un prodotto basato su Linux che consente di creare una copia speculare delle installazioni di Windows XP, Windows Vista e Windows 7 presenti sugli altri computer connessi alla rete locale.
FOG non implica l’impiego di alcun disco di boot dal momento che ogni operazione è da esso gestita facendo ricorso al protocollo TFTP (“Trivial File Transfer Protocol“) ed a PXE (“Preboot Execution Environment“).
PXE è una particolare metodologia che consente di effettuare l’avvio di un personal computer utilizzando le informazioni che provengono dall’interfaccia di rete ethernet, con il supporto di un server “ad hoc”. FOG si propone come il server in grado di trasmettere ai sistemi connessi in LAN, i dati da utilizzare per il boot. Senza ricorrere ad alcun supporto di memorizzazione di massa, quindi, è possibile inviare – da un sistema Linux “equipaggiato” con il software FOG – le istruzioni per effettuare, ad esempio, la copia del contenuto di un’unità disco od il ripristino della stessa.
E’ interessante notare come FOG sia in grado di ripristinare un’immagine proveniente, ad esempio, da una partizione da 80 GB su una macchina dotata di un hard disk contenente una partizione da soli 40 GB (a patto che, ovviamente, i dati contenuti nel file d’immagine non superino i 40 GB complessivi…).

Tutti i personal computer collegati alla rete locale sui quali si vogliono effettuare operazioni di disk imaging debbono supportare la modalità PXE ed averla correttamente attivata a livello BIOS (di solito, è sufficiente controllare che la scheda di rete sia la prima a poter effettuare il boot all’interno della rete locale).

Lo schema del funzionamento della piattaforma FOG è riassunto, in modo semplificato, nell’immagine. Sarà il server FOG a decidere, di volta in volta, se ciascuna macchina connessa alla rete locale debba effettuare, normalmente, il boot dal disco fisso oppure se debba essere eseguita un’operazione di copia o ripristino dei dati.
Quella indicata con la dizione “manager” è la macchina dalla quale si effettua l’amministrazione delle workstation connesse alla LAN. Se il server FOG è installato su un sistema Ubuntu Linux, ad esempio, il “manager” può essere un utente collegato localmente al server oppure ad un’altra macchina della rete locale (egli dovrà collegarsi al server digitando l’URL http://192.168.1.50/fog/management/ ove 192.168.1.50 deve essere sostituito con l’IP o col nome della macchina Linux server.

Come detto, FOG necessita di essere installato su una macchina Linux. Nel nostro caso, abbiamo utilizzato un sistema Ubuntu Linux. Per evitare di fare errori, suggeriamo di impratichirvi con la piattaforma FOG utilizzando due o tre di sistemi di test, non impiegati per scopi produttivi. In alternativa, si può pensare di approntare qualche macchina virtuale servendosi di VMware Player, di Virtualbox o di altri prodotti similari.

Il primo passo consiste nello scaricare, sul sistema Ubuntu Linux, l’archivio compresso di FOG. Per procedere, è sufficiente cliccare su questa pagina quindi su link corrispondente alla versione più recente del programma.
Si dovrà poi provvedere a prelevare il file con estensione .tar.gz.
Effettuando il download, da Ubuntu, con Mozilla Firefox, si troverà il file .tar.gz di FOG nella directory Scaricati. Da qui, cliccando con il tasto destro del mouse sul file fog_0.XX.tar.gz quindi scegliendo il comando Estrai qui, si potrà salvare il contenuto dell’archivio compresso in una sottocartella della directory Scaricati.

A questo punto, è necessario aprire il prompt dei comandi accedendo alla voce Terminale di Ubuntu.
Digitando il comando cd Scaricati/fog_0.32/bin (ove 0.32 va sostituito col numero corrispondente alla release di FOG scaricata dal web) quindi sudo ./installfog.sh, si avvierà l’installazione di FOG (si dovrà comunque digitare la password associata all’account root):

L’installazione di FOG proseguirà in modalità testo. Per accettare l’installazione della versione del prodotto realizzata per Ubuntu, è sufficiente premere il tasto Invio (opzione “2”).
Alla comparsa del messaggio “What type of installation would you like to do“, è possibile premere Invio per accettare la modalità “Normal server” (opzione “N”):

In corrispondenza del successivo quesito (“What is the IP address to be used by this FOG server“) è indispensabile indicare l’indirizzo IP associato alla macchina Ubuntu Linux ove si sta installando FOG.

Per quanto riguarda la domanda seguente (“Would you like to setup a router address for the DHCP server“) si prema semplicemente Invio in modo tale da rispondere in modo affermativo.
Non appena apparirà il messaggio “What is the IP address to be used for the router on the DHCP server“, si può confermare l’indirizzo IP associato al proprio router. Analoga operazione va effettuata alla comparsa della domanda “Would you like to setup a DNS address for the DHCP server and client boot image“. Nel nostro caso, abbiamo specificato, come indirizzo IP di riferimento sempre quello associato al router impiegato nella nostra struttura. E’ infatti tale router a farsi carico dell’assegnazione dinamica degli indirizzi IP all’interno della rete locale (DHCP) ed attraverso la sua interfaccia sono stati impostati alcuni server DNS predefiniti.

Agli ultimi tre quesiti (“Would you like to change the default network interface from eth0“, “Would you like to use the FOG server for dhcp service” e “This version of FOG has internationalization support, would you like to install the additional language packs“) si può rispondere premendo il tasto Invio, accettando così le regolazioni predefinite.

In corrispondenza del quesito finale Are you sure you wish to continue si deve digitare Y e premere Invio: verrà così avviata l’installazione vera e propria del pacchetto. E’ assolutamente indispensabile disporre di una connessione Internet attiva e funzionante.

Per la gestione dei dati, FOG utilizza MySQL, che viene installato come pacchetto a sé stante. Per procedere è necessario premere Invio alla comparsa del messaggio “Press enter to acknowledge this message“.

Successivamente, non appena verrà richiesto di inserire la password legata all’utente root di MySQL, è possibile inserire o meno una password:

Nel caso in cui MySQL non fosse già installato sulla macchina Ubuntu Linux, sarà FOG a farsi carico della configurazione del database e dell’account root di MySQL. Se invece MySQL fosse già presente, bisognerà aver cura di indicare la password associata all’account root.
La medesima parola chiave dovrà essere poi indicata manualmente nel file di configurazione di FOG config.php. Per modificarne il contenuto, sempre dalla finestra Terminale di Ubuntu, si dovrà digitare quanto segue:

sudo gedit /var/www/fog/commons/config.php

In corrispondenza della direttiva MYSQL_PASSWORD, tra le doppie virgolette, si dovrà digitare la password associata all’account root di MySQL quindi cliccare su Salva per memorizzare il contenuto del file di configurazione. Così facendo si scongiurerà la comparsa dell’errore “Unable to connect to database“.

Con la domanda “Would you like to notify the FOG group about this installation” la procedura d’installazione di FOG chiede se si fosse interessati ad informare gli autori del programma circa l’installazione appena effettuata. Il dato è utilizzato a fini statistici per stabilire se l’applicazione sia o meno apprezzata dagli utenti.

Per proseguire, è sufficiente cliccare col tasto destro del mouse sul link visualizzato e selezionare Apri collegamento.
Si aprirà così il browser web che provvederà a richiamare la pagina PHP che consente di interfacciarsi con la gestione delle varie funzionalità di FOG.

Facendo clic su Install/Upgrade now si preparerà il database MySQL per la gestione dei dati di FOG.

Configurazione del pannello di amministrazione di FOG ed impostazione dei client Windows

A questo punto si potrà effettuare il login al pannello di amministrazione di FOG utilizzando le credenziali d’accesso predefinite (fog come nome utente e password come password).

Apparirà così il pannello di amministrazione di FOG:

Suggeriamo, in primis, di cliccare sul pulsante User management (il secondo della barra degli strumenti di FOG) e di modificare le credenziali d’accesso predefinite.

Cliccando sulla terza icona (Host management), si può introdurre l’elenco delle macchine connesse alla LAN che debbono essere oggetto di operazioni di disk imaging.

Installazione del modulo client di FOG

Prima di continuare, è consigliabile procedere con l’installazione del modulo client di FOG sui personal computer Windows collegati in rete locale. Per svolgere quest’operazione, è necessario portarsi sul sistema client, avviare il browser web quindi digitare http://NOMESERVERFOG/fog/client nella barra degli indirizzi. Ovviamente NOMESERVERFOG deve essere sostituito col nome o con l’indirizzo IP della macchina Ubuntu sulla quale si è precedentemente installato il software FOG:

Dopo aver cliccato sul link FOG Client Service, verrà proposto il download di un archivio Zip. Il contenuto di tale file dovrà essere estratto sul disco fisso quindi sarà necessario fare doppio clic sul file setup.exe:

Durante l’installazione del “FOG Service“, accettate i valori di default.

Non appena verrà richiesto, bisognerà digitare l’indirizzo IP od il nome della macchina sulla quale si è installato il modulo server di FOG quindi cliccare sul pulsante Save changes. Effettuata quest’operazione, viene consigliato di riavviare il personal computer.
Accedendo al prompt dei comandi di Windows quindi inserendo sc query "fog service", si potrà notare come il servizio di sistema associato a FOG sia stato correttamente avviato in modo automatico:

Nella “traybar” del sistema operativo, inoltre, sarà mostrata l’icona di FOG client.
Riavviando il personal computer client è bene controllare che nel BIOS sia attivata la possibilità di effettuare il boot del sistema via PXE (tale opzione deve essere impostata come modalità di boot primaria; spesso, nel BIOS non si parla di PXE ma di avvio da LAN).

Configurazione delle postazioni di lavoro da gestire

Tornando sul pannello di amministrazione di FOG, su Ubuntu, si dovrà fare clic sull’icona Image management quindi sul link Nuova immagine. In questo modo si aggiungerà una nuova immagine del disco al database di FOG. Ad esempio, se si prevede di gestire uno o più sistemi sui quali è installato Windows XP, si potrà digitare il nome WINXP nell’apposita casella, specificare il gruppo nella quale dev’essere collocata e la sua tipologia:

A questo punto, si potrà accedere alla sezione Host management, fare clic su Aggiungi nuova postazione ed inserire, negli appositi campi, le informazioni richieste. In particolare, vanno inseriti il nome dell’host specificato in Windows, l’IP corretto, e l’indirizzo MAC associato alla scheda di rete. E’ bene accertarsi di inserire sempre i dati corretti altrimenti si potrebbe rischiare la sovrascrittura del contenuto delle workstation errate, perdendo così tutti i dati in esse memorizzati:

Il MAC address, va ricordato, deve essere obbligatoriamente indicato facendo uso dei due punti. Per stabilire nome dell’host, indirizzo IP ed MAC corretti per ciascuna workstation Windows, è sufficiente portarsi al prompt dei comandi e digitare ipconfig /all:

Come già evidenziato, i “trattini” dell’indirizzo MAC debbono essere sostituiti con il simbolo dei “due punti” (:).
Per aggiungere la nuova postazione di lavoro in FOG, è sufficiente fare clic sul pulsante Aggiungi in calce alla finestra.

Cliccando su Elenca tutte le postazioni, si troverà in elenco l’host appena inserito. Qualora tale computer fosse acceso e venisse visualizzato un punto di colore rosso, si apra la finestra Terminale sul sistema Ubuntu Linux ove si è installato FOG e si digiti quanto segue:

sudo gedit /etc/hosts

In calce al file hosts si aggiunga l’IP della workstation inserita in FOG ed il suo nome corrispondente:

Il menù a tendina Immagine postazione consente di associare un file d’immagine precedentemente inserito nella sezione Image management alla postazione appena aggiunta.

Creazione e ripristino dei file d’immagine con FOG

Affinché FOG interagisca con le workstation o postazioni di lavoro precedentemente configurate, è necessario accedere alla sezione Task management del pannello di amministrazione. Con un clic sulla voce Elenca tutte le postazioni, si otterrà la lista completa delle postazioni aggiunte in elenco.

Premendo la freccia posta sotto la colonna Invio quindi confermando l’operazione con un clic su Invia immagine, si otterrà il messaggio “Attività avviata“.

Osservando quanto contenuto nella sezione “Attività in esecuzione“, si noterà come la procedura di creare del file d’immagine sia stata posta in coda. Al riavvio del sistema connesso in rete locale, l’operazione di disk imaging sarà automaticamente effettuata e l’avanzamento della stessa indicato nella pagina PHP di FOG.

Quella che segue è la schermata visualizzata sulla workstation oggetto dell’operazione di disk imaging dopo il caricamento del kernel Linux e di alcuni file necessari per il funzionamento lato client di FOG:

Anche lato server, nel pannello di amministrazione di FOG sarà mosytrata una schermata che riflette lo stato di avanzamento del backup.

Ripristino di un file d’immagine

Per ripristinare il contenuto di un file d’immagine, è sufficiente portarsi nuovamente nella sezione Task management, cliccare su Elenca tutte le postazioni e servirsi del tasto freccia posto sotto la colonna Installa. Cliccando su Esegui un’immagine di tutti i computer, al successivo reboot della macchina connessa in LAN, FOG provvederà ad effettuare il ripristino del file d’immagine precedentemente associato alla workstation:

Possibilità di interazione di tipo avanzato con i vari sistemi client

L’icona Avanzate, posta accanto a ciascuna postazione di lavoro elencata nella sezione “Task management, consente di richiedere l’espletamento di tutta una serie di operazioni aggiuntive, non strettamente correlate con l’attività di disk imaging. Tra quelle indicate, citiamo la possibilità di avviare una scansione antivirus con ClamAV, di effettuare la cancellazione sicura (wiping) del contenuto di tutti i dischi (massima cautela!), di accendere il personal computer ricorrendo alla funzionalità WOL (Wake-on-LAN; per maggiori informazioni in merito, fate riferimento a questi nostri articoli), l’azzeramento delle password degli account di Windows, il recupero dei dati e così via.

Nel caso in cui si avesse l’esigenza di riavviare l’installazione di FOG sbarazzandosi di tutte le precedenti regolazioni, si potrà utilizzare il comando seguente, sempre dalla finestra Terminale Linux:

sudo mv /opt/fog/.fogsettings /opt/fog/fogsettings-firstInstall

Successivamente si potrà riavviare l’installazione di FOG dalla sottocartella bin utilizzando sempre il comando sudo ./installfog.sh.

Per disinstallare completamente FOG dalla macchina Linux, si potranno eseguire in sequenza i comandi sotto riportati:
sudo rm /etc/init.d/FOGImageReplicator
sudo rm /etc/init.d/FOGMulticastManager
sudo rm /etc/init.d/FOGScheduler
sudo rm -rf /var/www/fog
sudo rm -rf /opt/fog
sudo rm -rf /tftpboot
sudo rm -rf /images
sudo userdel fog

Per eliminare il database MySQL di FOG: sudo mysql -p
drop database fog;
quit

Il sito di riferimento del progetto FOG è raggiungibile facendo riferimento a questo link.

Ti consigliamo anche

Link copiato negli appunti