In Come prevenire e ripristinare l'eliminazione accidentale di file in Linux, abbiamo affrontato i backup locali e remoti, come ridurre il problema del ripristino dei file con una gestione intelligente dei comandi di eliminazione dei file e le migliori pratiche generali per rispondere alle emergenze di ripristino dei file. Sfortunatamente, accadono incidenti e l'hardware si guasta. Uno strumento a cui rivolgersi quando è il momento di recuperare file o file system persi è TestDisk.
Nota: Se non disponi di un piano di backup obbligatorio, implementalo ora. La prima volta che non devi ricorrere a TestDisk perché disponi di un'immagine di backup, la pianificazione e la preparazione si ripagano da sole in tempo e tranquillità.
TestDisk tenta di recuperare i dati della partizione persa e tutti i file persi entro i limiti della partizione recuperata. Questo strumento potrebbe essere in grado di recuperare i tuoi dati da solo, oppure potresti usarlo insieme a Scalpel, uno strumento di estrazione di file, utilizzando prima TestDisk per ottenere un'immagine del disco e quindi scansionando l'immagine per i tipi di file con Scalpel. Puoi trovare ulteriori informazioni sull'utilizzo di Scalpel in un prossimo articolo.
TestDisk è meno mirato e più flessibile di Scalpel, quindi il modo in cui utilizzi questo strumento dipende dalla situazione. TestDisk è un'applicazione interattiva, quindi inizia puntandola al dispositivo o all'immagine della vittima. Ad esempio:
$ sudo ./testdisk_static /dev/sdx
Disk /dev/sdx - 1939 MB / 1850 MiB - General UDisk
Please select the partition table type, press Enter when done.
[Intel ] Intel/PC partition
>[EFI GPT] EFI GPT partition map (Mac i386, some x86_64...)
[Humax ] Humax partition table
[Mac ] Apple partition map
[None ] Non partitioned media
[Sun ] Sun Solaris partition
[XBox ] XBox partition
[Return ] Return to disk selection
TestDisk tenta di rilevare la mappa delle partizioni corretta, ma se conosci meglio, puoi sovrascrivere la sua ipotesi con una posizione specifica. Dopo aver scelto uno schema di partizione, TestDisk offre il suo menu principale. Qui puoi analizzare i file, recuperarli o modificare la geometria e le opzioni del disco. Il flusso di lavoro tipico consiste nell'analisi e quindi nel ripristino.
L'esecuzione di TestDisk su una chiavetta USB di esempio restituisce questa analisi:
TestDisk 7.0, Data Recovery Utility, April 2015
Disk /dev/sdb - 1939 MB / 1850 MiB - CHS 1018 60 62
Partition Start End Size in sectors
>D MS Data 2046 3788757 3786712 [wreck]
D MS Data 75744 84543 8800 [NONAME]
In questo caso, la partizione persa è stata denominata wreck
e TestDisk ha scoperto con successo i suoi confini. Se l'unico dato perso da cui stai recuperando è la perdita di una mappa di partizione, a questo punto puoi usare questi dati per ricreare quella mappa usando GNU Parted.
Un'analisi riuscita sblocca diverse nuove opzioni in Avanzate menù. Armato dei limiti della partizione, puoi scaricare i dati di questa partizione in un file immagine:
Partition Start End Size in sectors
> 1 P Unknown 2048 3788766 3786719
[ Type ] >[Image Creation] [ Quit ]
Puoi quindi utilizzare Scalpel sull'immagine per recuperare singoli file.
In alternativa, potresti conoscere la partizione e il tipo di filesystem (Tipo ), nel qual caso puoi dettare come TestDisk tratta i dati. In questo modo TestDisk può individuare un Superblock di backup , consentendoti di utilizzare mkfs
per recuperare i dati in questo modo:
Disk /dev/sdb - 1939 MB / 1850 MiB - CHS 1018 60 62
Partition Start End Size in sectors
MS Data 2048 3788759 3786712 [wreck]
superblock 32768, blocksize=4096 [wreck]
superblock 98304, blocksize=4096 [wreck]
superblock 163840, blocksize=4096 [wreck]
superblock 229376, blocksize=4096 [wreck]
superblock 294912, blocksize=4096 [wreck]
To repair the filesystem using alternate superblock, run
fsck.ext4 -p -b superblock -B blocksize device
Oppure puoi utilizzare TestDisk per rilevare i file con l'Elenco opzione di menu:
Partition Start End Size in sectors
> 1 P EFI System 2048 3788766 3786719
[Type] [Superblock] >[ List ] [Image Creation] [ Quit ]
L'uso di TestDisk è sicuramente un viaggio. Se in precedenza hai eseguito un backup dell'unità che stai tentando di salvare, questo strumento è generalmente sicuro da sperimentare quando si verificano problemi. Se stai solo sperimentando, tuttavia, è più sicuro farlo su una macchina di prova separata.
E per favore, sperimenta. L'esperienza che guadagnerai praticando è inestimabile.