A volte, nell’uso quotidiano del computer, possono capitare dei problemi che comportano la perdita di dati. Un evento abbastanza frequente che comporta la perdita di dati riguarda l’improvvisa "scomparsa" di una partizione del disco fisso che, per qualche motivo, pnon risulta più accessibile.
Fortunatamente, se i dati non sono stati sovrascritti, con Linux avremo delle buone probabilità di recuperare la partizione. In questo post vi segnalo due utility interessanti con le quali compiere il recupero di una partizione "scomparsa".
Cos’è una partizione?
Una partizione non è altro che un "compartimento" del disco fisso.
Ogni Hard-Disk, per funzionare, deve avre almeno una partizione. Nulla vieta di suddividere il disco fisso in più partizioni le quali possono avere dimensioni differenti la cui somma sarà uguale alla capienza "fisica" del dispositivo di archiviazione.
Creando più partizioni, in pratica, avremo tanti archivi "virtuali" allocati all’interno del medesimo contenitore fisico.
Il partizionamento di un Hard-Disk è una procedura frequente: in molti PC Windows, ad esempio, il disco fisso viene predisposto nativamente con due partizioni: una utilizzata per i dati dell’utente ed una contenente i file per un eventuale ripristino del sistema.
Partizioni scomparse: perchè?
Può capitare che, ad un certo punto, una partizione del nostro disco fisso non risulti più "visibile" causando, di fatto, l’inaccessibilità di tutti i dati in essa contenuti.
Ma perché si verifica la perdita di una partizione? Ovviamente i motivi possono essere più di uno:
- l’errore umano dell’operatore (che, inavvertitamente, cancella una partizione del disco);
- un virus (che compromette il corretto partizionamento del nostro disco fisso);
- un difetto dell’hardware.
In tutte queste circostanze può verificarsi la perdita di una partizione.
Fortunatamente, molte volte, la perdita di una partizione non equivale alla perdita dei dati. Infatti, coj i giusti software, è spesso possibile recuperare la partizione e con essa i nostri preziosi dati.
In qesuto post vedremo alcune utilità per il recupero delle partizioni perse in ambiente Linux.
GNU parted
GNU parted è un programma per la manipolazione della partizioni che potrà essere utilizzato su tutte le più diffuse distribuzioni del Pinguino; immaginiamo di aver "perso" una partizione e con essa tutti i dati che vi erano conservati; prima di farci prendere dal panico è bene seguire una semplice procedura, innanzitutto cominciamo con lo smontare tutte le partizioni disponibili compresa la SWAP che disabiliteremo in questo modo da Root:
sudo swapoff -a
Fatto questo richiamiamo il programma per il partizionamento indicando ad esso il disco rigido che dovrà essere coinvolto nel salvataggio ("/dev/sda" nel nostro esempio):
sudo parted /dev/sda
Fatto questo bisognerà lanciare il comando per il ripristino, che nel caso specifico dovrà essere contenuto in un’istruzione come la seguente:
(parted) rescue INIZIO FINE
Dove "INIZIO" e "FINE" indicano le locazioni del disco contenenti la partizione da recuperare, le quali potranno essere espresse in GB (o anche MB) così come in valore percentuale.
Gparted
Un metodo alternativo per il recupero di una partizione in ambiente Linux prevede l’utilizzo di Gpart. Installare Gparted è molto semplice, su Ubuntu potremo per esempio utilizzare il seguente comando:
sudo apt-get install gparted
Fatto questo , bisognerà lanciare sempre da Root il seguente comando:
gpart /dev/sda
Dove "/dev/sda" è il nome arbitrario assegnato al disco rigido per questo esempio. Esso dovrà essere modificato sulla base dell’architettura relativa al sistema corrente; l’istruzione effettuerà un’analisi del disco alla ricerca della mappa esatta delle partizioni, il risultato ottenuto dovrà quindi essere analizzato con estrema attenzione. Questo un esempio di outout:
Begin scan... Possible partition(DOS FAT), size(1907mb), offset(0mb) Possible partition(SGI XFS filesystem), size(5730mb), offset(1907mb) End scan. Checking partitions... Partition(DOS or Windows 95 with 32 bit FAT, LBA): primary Partition(Linux ext2 filesystem): primary Ok. Guessed primary partition table: Primary partition(1) type: 012(0x0C)(DOS or Windows 95 with 32 bit FAT, LBA) size: 1907mb #s(3906544) s(16-3906559) chs: (0/1/1)-(1023/19/16)d (0/1/1)-(12207/19/16)r
Un volta accertatisi di aver recuperato la struttura originale del disco, sarà possibile lanciare un comando per la conferma:
gpart -W /dev/sda /dev/sda
In questo modo, la struttura rilevata da Gpart dovrebbe sovrascriversi a quella presente in cui è stata persa la partizione che, se tutto dovesse andare per il meglio, verrà recuperata.