|
Dimensione: 21386
Commento: import
|
Dimensione: 21700
Commento:
|
| Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
| Linea 3: | Linea 3: |
| [[Indice]] | [[Indice(depth=1)]] |
| Linea 7: | Linea 7: |
| I file eliminati o persi accidentalmente possono essere recuperati da unità guaste o formattate e da qualunque altro dispositivo di memorizzazione ottico o di massa con l'uso di programmi disponibili nei [:Repository:repository] di '''Ubuntu'''. Questa guida spiega come recuperare i dati persi. In generale, si ricorda che il modo migliore per evitare la perdita dei propri dati è di effettuare con cadenza regolare delle copie di [:AmministrazioneSistema/Backup:backup]. ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%>[[Immagine(Icone/Piccole/warning.png,,center)]] ||<style="padding:0.5em; border:none;">'''E' buona norma evitare di provare a scrivere su dispositivi danneggiati. Questo potrebbe peggiorare i guasti hardware presenti e sovrascrivere ulteriormente i dati presenti compromettendo la possibilità di poterli recuperare in futuro. E' raccomandabile spegnere il computer appena possibile e di farlo ripartire in seguito solo per mezzo di sistemi "live" in modo da potere analizzare i dischi soggetti a problematiche [:Hardware/DispositiviPartizioni/MontarePartizioni:"non montati"]. ''' || modificare poi la nota in alto. troppo vistosa Qualora le applicazioni di seguono esposte non riescano a raggiungere il risultato desiderato, a seconda dell'importanza dei dati presenti, considerare la possibilità di richiedere una consulenza professionale in merito. |
I file eliminati o persi accidentalmente possono essere recuperati da qualunque dispositivo di memorizzazione, ottico o di massa, con l'uso di programmi specifici molti dei quali disponibili nei [:Repository:repository] di '''Ubuntu'''. Questa guida spiega come recuperare i propri dati. Occorre sottolineare che il modo migliore per evitare la perdita dei dati è di effettuare con cadenza regolare delle copie di backup e a questo proposito si invita a leggere le relative [:AmministrazioneSistema/Backup:guide]. |
| Linea 19: | Linea 13: |
| Se il dispositivo è danneggiato è consigliabile creare un immagine del dispositivo e lavorare su esso per il recupero dei dati (si veda in seguito). Qualora il guasto non sia meccanico, è possibile recuperare i dati direttamente dal dispositivo. Per recuperare i dati da un dispositivo guasto, sarà necessario disporre di un dispositivo di archiviazione di capienza pari o superiore su cui salvare i dati recuperati. Se si necessita di un'immagine del dispositivo guasto, sarà necessario disporre di ulteriore spazio. Come accennato, è consigliabile eseguire questi strumenti da un altro sistema operativo che risiede su un altro disco (o da sistemi "live). Allo scopo è sufficiente un CD di Ubuntu Desktop. Se non dispone di tanta ram o connessione a internet si consigliano sistemi live come [http://ubuntu-rescue-remix.org/ Ubuntu rescue remix] oppure [http://www.sysresccd.org/Main_Page system rescue cd] i quali dispongono dei programmi di seguito menzionati. == Lost Partition == If you made a mistake while partitioning and the partition no longer appears in the partition table, so long as you have not written data in that space, all your data is still there. === GNU Parted === Run Parted from the command line to recover your partition. When changing the partition table on your hard drive, you must ensure that no partition on the disk is mounted. This includes swap space. The easiest way to accomplish this is to run the live cd. Parted is installed on the base Ubuntu system. Once at the desktop, open a terminal and run_: {{{ |
Se il dispositivo ha un guasto meccanico, per il recupero dei dati, si consiglia di lavorare su una sua immagine al fine di non danneggiarlo ulteriormente con operazioni di scrittura che potrebbero rendere i dati irrecuperabili se sovrascritti. Qualora si verificasse questa evenienza è raccomandabile spegnere immediatamente il computer e in seguito utilizzarlo solo mediante sistemi ''live'' in modo da potere analizzare i dispositivi soggetti a problematiche operando a [:Hardware/DispositiviPartizioni/MontarePartizioni:"partizioni smontate"]. Viceversa, se il guasto non è di natura meccanica, è possibile recuperare i dati direttamente dal dispositivo. Per potere eseguire il recupero è necessario disporre di un altro dispositivo di archiviazione. Questo dovrà essere di capienza pari o superiore. Considerare la necessità di ulteriore spazio qualora sia richiesto di intervenire mediante la creazione di un'immagine. Per avviare il sistema in modalità ''live'' è sufficiente [http://www.ubuntu-it.org/index.php?page=Ottenere_Ubuntu disporre] di una copia di '''Ubuntu Desktop Editition''' da potere avviare con il [:Installazione/Grafica:CD-ROM] o da un [:Installazione/DaSupportoUsb:dispositivo USB]. In alternativa, qualora si disponga si poca ram o si è privi di una connessione ad internet, è possibile utilizzare [http://ubuntu-rescue-remix.org/ Ubuntu rescue remix] oppure [http://www.sysresccd.org/Main_Page System Rescue Cd] i quali dispongono molti dei programmi di seguito menzionati. Qualora le applicazioni di seguono esposte non riescano a raggiungere il risultato desiderato, a seconda dell'importanza dei dati presenti, si consideri anche la possibilità di richiedere una consulenza professionale in merito. Questo perché l'[http://it.wikipedia.org/wiki/Informatica_forense informatica forense] è una scienza molto vasta e molte applicazioni non sono accessibili ad un pubblico "casalingo" a causa dei loro costi molto elevati. = Recuperare le partizioni = Se è stato fatto un errore durante il partizionamento e la partizione non compare più nella tabella delle partizioni, a patto che non si siano scritti dei dati sullo spazio specifico della tabelle delle partizioni, i dati saranno ancora presenti e recuperabili. == GNU Parted == E' possibile recuperare le partizioni utilizzando il comando ''parted''. Innanzitutto, quando si modifica la tabella delle partizioni sul disco rigido, è necessario assicurarsi che nessuna partizione sul disco sia montata, compreso lo [:Hardware/DispositiviPartizioni/PartizioniUbuntu#swap:spazio di swap]. Per smontare lo spazio di swap e avviare '''Parted''' procedere come segue: * Avviare una delle distribuzioni live citate in precedenza. * Digitare in una finestra di [:AmministrazioneSistema/RigaDiComando:terminale] il seguente comando: {{{ |
| Linea 38: | Linea 36: |
Next run parted and tell it to use the device in question. For example, if your /dev/sda drive is the drive from which you want to recover, run: {{{ |
* Eseguire '''Parted''' digitando in un terminale il seguente comando: {{{ |
| Linea 43: | Linea 38: |
| }}} Then, use the rescue option: rescue START END where Start is the area of the disk where you believe the partition began and END is it's end. If parted finds a potential partition, it will ask you if you want to add it to the partition table. === Testdisk === Alternatively, the testdisk application may recover your partition. Use [[InstallingSoftware| any method]] to install the '''testdisk''' package. Run testdisk and it will scan your computer for media and offer you a menu-driven way to recover your partition. {{{ |
}}} dove `/dev/sda` è il dispositivo da recuperare. * Utilizzare l'opzione di recupero: {{{ rescue Inizio File }}} dove "Inizio" è l'area del disco in cui si ritiene che la partizione inizi e "Fine" indica la sua fine. Nel caso in cui '''parted''' trovi una partizione potenziale, verrà chiesta conferma per la sua aggiunta nella tabella delle partizioni. == Testdisk == In alternativa a '''Parted''' è possibile [:AmministrazioneSistema/InstallareProgrammi:installare] [apt://testdisk testdisk]. Avviare la scansione dei dispositivi con '''Testdisk''' digitando in una finestra di terminale il seguente comando: {{{ |
| Linea 61: | Linea 51: |
| === Gpart === Another program that can scan drives and re-create a partition table based on "guesses" is ''Gpart''. Use [[InstallingSoftware| any method]] to install the package {{{gpart}}}. To scan the first hard disk using default settings type {{{ |
Utilizzare i menù per recuperare le partizioni. == Gpart == Un altro modo per controllare e ricreare la tabella delle partizioni consiste nell'[:AmministrazioneSistema/InstallareProgrammi:installare] ed utilizzare [apt://gpart gpart]. * Digitare in una finestra di terminale il seguente comando {{{ |
| Linea 68: | Linea 59: |
| }}} or {{{ sudo gpart /dev/hda }}} depending on your Ubuntu version. You can restore the "guessed" partition table, '''only after checking it very carefully''' (you're strongly advised to write to another device instead), using {{{ |
}}} dove `/dev/sda` è il dispositivo da recuperare. * È possibile ripristinare la tabella delle partizioni, solo dopo aver verificato con la massima attenzione (viceversa si invita a scrivere su un altro dispositivo), digitando in una finestra di terminale il seguente comando {{{ |
| Linea 80: | Linea 65: |
| == Imaging a damaged device, filesystem or drive == There are two different programs for making an image of a damaged device, in preparation for rescuing files. They are [[https://bugs.launchpad.net/ubuntu/+source/ddrescue/+bug/161126|confusingly given the same name]]: * [[http://www.gnu.org/software/ddrescue/ddrescue.html|GNU ddrescue]] (packaged as [[apt:gddrescue|gddrescue]], though once installed the command is "ddrescue") * This is the one you want. '''This documentation currently only applies to GNU ddrescue.''' * [[http://www.garloff.de/kurt/linux/ddrescue/|dd_rescue]] (packaged as [[apt:ddrescue|ddrescue]]) * This is an older, slower shell script that needs to be run in combination with another script to do the same thing as the GNU version. From /usr/share/doc/gnuddrescue/README ''GNU ddrescue is a data recovery tool. It copies data from one file or block device (hard disc, cdrom, etc) to another, trying hard to rescue data in case of read errors.'' Ddrescue does not truncate the output file if not asked to. So, every time you run it on the same output file, using a logfile, it tries to fill in the gaps. The basic operation of ddrescue is fully automatic. That is, you don't have to wait for an error, stop the program, read the log, run it in reverse mode, etc. If you use the logfile feature of ddrescue, the data is rescued very efficiently (only the needed blocks are read). Also you can interrupt the rescue at any time and resume it later at the same point. Automatic merging of backups: If you have two or more damaged copies of a file, cdrom, etc, and run ddrescue on all of them, one at a time, with the same output file, you will probably obtain a complete and error-free file. This is so because the probability of having damaged areas at the same places on different input files is very low. Using the logfile, only the needed blocks are read from the second and successive copies. '' '''If the filesystem you are imaging is greater than 4 gigs in size, you will not be able to use an MSDOS (VFAT) filesystem (usually found on USB drives) to store the image, since there is a 4G limit to the maximum size of a file on such filesystems.''' Use EXT3 or another filesystem that can handle such file sizes.'' Use [[InstallingSoftware| any method]] to install the following package: {{{ gddrescue }}} Run gnuddrescue like this: {{{ ddrescue [options] infile outfile [logfile] }}} So, if /dev/sda is unreadable, you will need to acquire another disk (or other media) onto which to save the output image. You will need to have more room on the new media than on the failed disk. {{{ |
= Creare un immagine di un dispositivo = Per ottenere l'immagine di un dispositivo danneggiato, in preparazione del salvataggio dei file, è disponibile il programma '''GNU ddrescue''' installabile tramite il pacchetto [apt://gddrescue gddrescue]. In seguito il suo comando sarà ''ddrescue''. Per una breve panoramica delle sue funzionalità e per approfondimenti si invita alla lettura del [http://www.gnu.org/software/ddrescue/ddrescue_it.html seguente documento]. Prima di procedere, bisogna tenere presente che i filesystem di tipo [:Hardware/DispositiviPartizioni/MontarePartizioni/Fat:Fat] dispongono di un limite di 4GiB alla dimensione di ciascun file. E' tipico delle unità USB disporre di questo tipo di filesystem. Se si è a conoscenza che l'immagine finale sarà superiore a tale dimensione è necessario utilizzare file system che supporti capacità superiori come ad esempio [:Hardware/DispositiviPartizioni/MontarePartizioni/Ext3:Ext3] o altri. Per utilizzare '''GNU ddrescue''' digitare in una finestra di terminale un comando avente la seguente sintassi: {{{ ddrescue [options] partizione_da_recuperare destinazione_immagine destinazione_file_di_log }}} Quindi, ad esempio {{{ |
| Linea 119: | Linea 79: |
| }}} Run successive passes like this: {{{ |
}}} dove il comando ''ddrescue'' di recupererà l'immagine dal dispositivo `dev/sda` e di salvarla in `/media/usbdrive/image`; inoltre, creerà un file di log in `/media/usbdrive/logfile`. L'opzione `-r 3` rappresenta il numero di tentativi di lettura che ''ddrescue'' farà qualora incontri degli errori. `-1` invita il programma ad eseguire un numero infinito di tentativi. Il passo successivo potrebbe essere: {{{ |
| Linea 125: | Linea 83: |
| }}} and gnuddrescue will use the log file to only read the gaps with errors. In both cases, the -r option determines the number of times gddrescue will try to read when it encounters an error (-1 = infinity). From [[http://www.forensicswiki.org/wiki/Ddrescue|Forensics Wiki]]: ---- First you copy as much data as possible, without retrying or splitting sectors: {{{ddrescue --no-split /dev/hda1 imagefile logfile }}} Now let it retry previous errors 3 times, using uncached reads: {{{ddrescue --direct --max-retries=3 /dev/hda1 imagefile logfile }}} If that fails you can try again but retrimmed, so it tries to reread full sectors: {{{ddrescue --direct --retrim --max-retries=3 /dev/hda1 imagefile logfile }}} ---- Other examples: These two examples are taken directly from the ddrescue info pages. Example 1: Rescue an ext2 partition in /dev/hda2 to /dev/hdb2 {{{ |
}}} dove rispetto al precedente è stata aggiunta l'opzione `-C` che invita il programma circoscrivere la lettura all'interno dei file già presenti nel registro (o file di log) creato in precedenza . Un [http://www.forensicswiki.org/wiki/Ddrescue noto sito] di analisi forense consiglia la seguente procedura: * Creare un immagine copiando all'interno di essa più dati possibili, senza contiere tentativi di lettura nel caso si incontrino degli errori (opzione `-n`): {{{ ddrescue -n /dev/hda1 imagefile logfile * Riprovare andando più a fondo riprovando 3 volte in presenza di errori di lettura: {{{ ddrescue -d -r 3 /dev/hda1 imagefile logfile }}} * Se il comando precedente fallisce riprovare leggendo i settori integralmente: {{{ ddrescue -d -R -r 3 /dev/hda1 imagefile logfile }}} Altri esempi, presenti sulla documentazione di '''GNU ddrescue''' sono i seguenti: * Esempio 1: recuperare una partizione ''Ext2'' da `/dev/hda2` salvando l'immagine i dati in `/dev/hdb2` {{{ |
| Linea 158: | Linea 103: |
| Example 2: Rescue a CD-ROM in /dev/cdrom {{{ |
* Esempio 2: recupera un Cd-Rom montato su `/dev/cdrom`: {{{ |
| Linea 162: | Linea 105: |
| }}} write cdimage to a blank CD-ROM == Extract filesystem from recovered image == Now that the drive has been imaged, you can recover the filesystem from the image. If the filesystem is not recoverable, you can try to recover individual files. === Mounting partitions on the image === If you imaged the whole drive, you can mount the individual partitions on the image by using the "offset" option when mounting a loop filesystem. mmls from The Sleuth Kit can show you the partitions found within an image: {{{ $ mmls file -b |
}}} scrivendo poi `cdimage` su un Cd-Rom vuoto. = Estrarre i dati da un immagine = Dopo avere creato l'immagine del dispositivo è necessario concentrarsi sul recupero dei dati presenti sull'immagine stessa. Qualora il filesystem non è recuperabile, è possibile comunque tentare di recuperare i singoli file. == Montare le partizioni sull'immagine == Se è stato recuperato l'intero disco, è possibile montare le singole partizioni sull'immagine utilizzando l'opzione "Offset" montando il filesystem "in loop". '''mmls''', disponibile nel pacchetto [apt://sleuthkit sleuthkit] è in grado di mostrare le partizioni che si trovano all'interno di un'immagine: {{{ mmls file -b |
| Linea 185: | Linea 124: |
}}} This shows several partitions. In this example, we want to mount the DOS partition starting at block 32. To calculate the number of bytes, multiply by 512: {{{ $ bc bc 1.06 Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation, Inc. This is free software with ABSOLUTELY NO WARRANTY. For details type `warranty'. 32 * 512 16384 quit }}} Mount the partition: {{{ |
}}} Come è possibile vedere il programma mostra più partizioni. In questo esempio, volendo montare la partizione DOS a partire dal blocco 32 (terza riga) bisogna calcolare il numero di byte moltiplicando per 512 (1 blocco uguale 512 byte). In questo caso 32 * 512 = 16384 sarò il byte di inizio della partizione. Quindi montare l'immagine: {{{ |
| Linea 207: | Linea 130: |
| (32 multiplied by 512 byte blocks = 16384) For mounting a typical NTFS partition created by Windows use: {{{ |
Per montare una tipica partizione NTFS creata da Windows usare: {{{ |
| Linea 213: | Linea 132: |
| }}} (63 multiplied by 512 byte blocks = 32256) == Extract individual files from recovered image == === Foremost === Foremost is a command-line tool which can recover files from a number of filesystems, including fat, ext3 and NTFS. It can be installed and run from the live cd. Boot from the live cd and then enable the universe repository and install foremost: Use [[InstallingSoftware| any method]] to install the following package: {{{ foremost }}} Foremost can recover files from an image of the drive, or from the drive directly. If the drive has suffered hardware problems, use gnuddrescue to image the drive first. Assuming the lost files are on hda, you need to create a writeable directory on another drive where you can put the recovered files (lets say you have a big external usb drive (sdb) {{{ |
}}} dove 63 * 512 byte = 32256 Nota: Per disporre di un interfaccia grafica per ''sleuthkit'' installare il pacchetto [apt://autopsy autopsy]. Per approfondimenti sul programma si rimanda al [http://www.sleuthkit.org/autopsy/desc.php sito ufficiale]. Si veda anche il resto della presente guida. = Estrarre singoli file dalla partizione recuperata = == Foremost == Foremost è un tool da riga di comando in grado di recuperare file da un certo numero di filesystem, inclusi i sistemi Fat, Ext3 e NTFS. Foremost è in grado di recuperare file da una immagine del disco o dal disco direttamente. Se l'unità è soggetta ad un problema meccanico fare riferimento a quanto detto prima e alla procedura di recupero con '''gnuddrescue'''. Supponendo che i file persi siano su `/dev/hda`, è necessario creare una cartella scrivibile su un altro disco in cui è possibile inserire i file recuperati (un disco esterno USB capiente ad esempio, di seguito `dev/sdb`). Montare il disco esterno e creare al suo interno una cartella chiamata `foremost` da utilizzare per il recupero: {{{ |
| Linea 241: | Linea 150: |
| And then run foremost: {{{ |
Avviare '''foremost''' digitando in una finestra di terminale il seguente comando: {{{ |
| Linea 246: | Linea 154: |
| To run formost on an image, just substitute the filename for the device {{{ |
Per avviare '''foremost''' su un file immagine semplicemente sostituire il percorso {{{ |
| Linea 252: | Linea 158: |
| The recovered files will then be owned by root. Change their ownership so that you can use them: {{{ |
I file recuperati saranno di proprietà dell'utente root. Per cambiare i permessi: {{{ |
| Linea 257: | Linea 162: |
| Use the -w switch to obtain only an audit of recoverable files: {{{ |
Usare l'opzione `-w` solo per si desidera ottenere un analisi dei file recuperabili: {{{ |
| Linea 263: | Linea 166: |
| To recover only specific file types, use the -t switch: {{{ |
Per recuperare uno specifico tipo di file usare l'opzione `-t`: {{{ |
| Linea 269: | Linea 170: |
| Available types: || '''Filetype''' || '''Comment''' || |
Tipi di file supportati: ||<style="width:40%;" style="background-color:#FB8B00;":> '''Tipo''' ||<style="width:60%;" style="background-color:#FB8B00;":> '''Nota''' || |
| Linea 292: | Linea 193: |
=== Scalpel === |
{{{ == Scalpel == |
| Linea 303: | Linea 204: |
| === Magic Rescue === | == Magic Rescue == |
| Linea 316: | Linea 218: |
| }}} | |
| Linea 319: | Linea 222: |
| Photorec is file data recovery software designed to recover lost pictures from digital camera memory or even Hard Disks. It has been extended to search also for non audio/video headers. It searches for 80 different types of files. Photorec is part of the Testdisk package. Use [[InstallingSoftware| any method]] to install the following package: {{{ testdisk }}} To run Photorec on an image file, do: {{{ |
'''!PhotoRec''' è un programma di recupero dati creato inizialmente solo per recuperare immagini perse dalla memoria della fotocamera digitale o da dischi fissi. In seguito il supporto è stato esteso anche per file non audio o video. Consente la ricerca di 80 diversi tipi di file. '''!PhotoRec''' fa parte del pacchetto [apt://testdisk testdisk]. Per avviare Photorec per analizzare un file immagine digitare il seguente comando in una finestra di terminale: {{{ |
| Linea 331: | Linea 228: |
| To recover files directly from a device, run photorec without any arguments and you will be given a menu of available devices. {{{ |
Per recuperare i file direttamente dal dispositivo oggetto di recupero, avviare il programma senza argomenti e selezionare i dispositivi disponibili dal menù: {{{ |
| Linea 337: | Linea 232: |
| See [[http://www.psychocats.net/ubuntucat/recovering-windows-files-with-a-ubuntu-cd-iii-deleted-files/|this link]] for a detailed description of how to use Photorec. | Si rimanda a ulteriori risorse (fare anchor) per documenti di approfondimento sul suo utilizzo. |
| Linea 341: | Linea 236: |
| This program is dedicated to identifying and recovering JPEG pictures. You can install the package {{{recoverjpeg}}} using [[InstallingSoftware| any method]], and then run (assuming {{{/dev/sda1}}} is the partition you want to recover from) {{{ |
'''recoverjpeg''' è un programma specifico per l'identificazione e il recupero delle immagini in formato `.jpeg`. Installare il pacchetto [apt://recoverjpeg recoverjpeg] e avviarlo digitando in una finestra di terminale il seguente comando: {{{ |
| Linea 344: | Linea 240: |
| }}} Recovered files will be saved in your home directory, with names following the pattern {{{image*.jpg}}}. |
}}} sostituendo `/dev/hda1` con il dispositivo sul quale si desidera indagare. I file recuperati verranno salvati nella propria cartella '''Home'', ogni immagine sarà salvata nel formato `image*.jpg`. |
| Linea 350: | Linea 246: |
| [[DataRecovery/NtfsUndelete | NtfsUndelete]] can recover deleted files from an NTFS file-system. The Windows and LiveCd versions have a very nice intuitive gui but the linux one is probably stronger and does not have a front-end gui at the moment. | [https://help.ubuntu.com/community/DataRecovery/NtfsUndelete NtfsUndelete] può recuperare file da un filesystem NTFS. The Windows and LiveCd versions have a very nice intuitive gui but the linux one is probably stronger and does not have a front-end gui at the moment. |
| Linea 357: | Linea 253: |
| The best simple guide i have found so far 24-11-2010) is * http://www.sucka.net/2010/04/recover-deleted-files-with-ntfsundelete-from-a-ubuntu-livecd/ Obviously with a name like that i was careful about where i opened the page but it was fine. |
The best simple guide i have found so far 24-11-2010) is [http://www.sucka.net/2010/04/recover-deleted-files-with-ntfsundelete-from-a-ubuntu-livecd/ questa]. Obviously with a name like that i was careful about where i opened the page but it was fine. |
| Linea 363: | Linea 257: |
| To search {{{ |
To search {{{ |
| Linea 367: | Linea 260: |
| To undelete, although this might be a little wrong, the"-" at the end worries me. {{{ |
To undelete, although this might be a little wrong, the"-" at the end worries me. {{{ |
| Linea 372: | Linea 264: |
| For better information on using ntfsundelete please see the separate page [[DataRecovery/NtfsUndelete | NtfsUndelete]], particularly the External Links there. |
For better information on using ntfsundelete please see the separate page [https://help.ubuntu.com/community/DataRecovery/NtfsUndelete NtfsUndelete], particularly the External Links there. |
| Linea 382: | Linea 273: |
| Linea 485: | Linea 375: |
== Prevention == The best way to avoid data loss is by performing regular backups. See: BackupYourSystem == Other links == |
= Ulteriori risorse = * [https://help.ubuntu.com/community/DataRecovery Documento originale] * [http://www.psychocats.net/ubuntucat/recovering-windows-files-with-a-ubuntu-cd-iii-deleted-files/ Documento su Photorec] |
| Linea 493: | Linea 380: |
| Linea 495: | Linea 381: |
| Linea 497: | Linea 382: |
= Ulteriori risorse = * [https://help.ubuntu.com/community/DataRecovery Documento originale] |
* [http://www.caine-live.net/ Distribuzione specifica per l'analisi forense] * [http://guide.debianizzati.org/index.php/Recuperare_i_dati_da_un_Hard_Disk_danneggiato Debianizzati.org] |
Introduzione
I file eliminati o persi accidentalmente possono essere recuperati da qualunque dispositivo di memorizzazione, ottico o di massa, con l'uso di programmi specifici molti dei quali disponibili nei [:Repository:repository] di Ubuntu. Questa guida spiega come recuperare i propri dati.
Occorre sottolineare che il modo migliore per evitare la perdita dei dati è di effettuare con cadenza regolare delle copie di backup e a questo proposito si invita a leggere le relative [:AmministrazioneSistema/Backup:guide].
Premessa
Se il dispositivo ha un guasto meccanico, per il recupero dei dati, si consiglia di lavorare su una sua immagine al fine di non danneggiarlo ulteriormente con operazioni di scrittura che potrebbero rendere i dati irrecuperabili se sovrascritti. Qualora si verificasse questa evenienza è raccomandabile spegnere immediatamente il computer e in seguito utilizzarlo solo mediante sistemi live in modo da potere analizzare i dispositivi soggetti a problematiche operando a [:Hardware/DispositiviPartizioni/MontarePartizioni:"partizioni smontate"]. Viceversa, se il guasto non è di natura meccanica, è possibile recuperare i dati direttamente dal dispositivo.
Per potere eseguire il recupero è necessario disporre di un altro dispositivo di archiviazione. Questo dovrà essere di capienza pari o superiore. Considerare la necessità di ulteriore spazio qualora sia richiesto di intervenire mediante la creazione di un'immagine.
Per avviare il sistema in modalità live è sufficiente [http://www.ubuntu-it.org/index.php?page=Ottenere_Ubuntu disporre] di una copia di Ubuntu Desktop Editition da potere avviare con il [:Installazione/Grafica:CD-ROM] o da un [:Installazione/DaSupportoUsb:dispositivo USB]. In alternativa, qualora si disponga si poca ram o si è privi di una connessione ad internet, è possibile utilizzare [http://ubuntu-rescue-remix.org/ Ubuntu rescue remix] oppure [http://www.sysresccd.org/Main_Page System Rescue Cd] i quali dispongono molti dei programmi di seguito menzionati.
Qualora le applicazioni di seguono esposte non riescano a raggiungere il risultato desiderato, a seconda dell'importanza dei dati presenti, si consideri anche la possibilità di richiedere una consulenza professionale in merito. Questo perché l'[http://it.wikipedia.org/wiki/Informatica_forense informatica forense] è una scienza molto vasta e molte applicazioni non sono accessibili ad un pubblico "casalingo" a causa dei loro costi molto elevati.
Recuperare le partizioni
Se è stato fatto un errore durante il partizionamento e la partizione non compare più nella tabella delle partizioni, a patto che non si siano scritti dei dati sullo spazio specifico della tabelle delle partizioni, i dati saranno ancora presenti e recuperabili.
GNU Parted
E' possibile recuperare le partizioni utilizzando il comando parted.
Innanzitutto, quando si modifica la tabella delle partizioni sul disco rigido, è necessario assicurarsi che nessuna partizione sul disco sia montata, compreso lo [:Hardware/DispositiviPartizioni/PartizioniUbuntu#swap:spazio di swap].
Per smontare lo spazio di swap e avviare Parted procedere come segue:
- Avviare una delle distribuzioni live citate in precedenza.
Digitare in una finestra di [:AmministrazioneSistema/RigaDiComando:terminale] il seguente comando:
sudo swapoff -a
Eseguire Parted digitando in un terminale il seguente comando:
sudo parted /dev/sda
dove /dev/sda è il dispositivo da recuperare.
Utilizzare l'opzione di recupero:
rescue Inizio File
dove "Inizio" è l'area del disco in cui si ritiene che la partizione inizi e "Fine" indica la sua fine. Nel caso in cui parted trovi una partizione potenziale, verrà chiesta conferma per la sua aggiunta nella tabella delle partizioni.
Testdisk
In alternativa a Parted è possibile [:AmministrazioneSistema/InstallareProgrammi:installare] [apt://testdisk testdisk].
Avviare la scansione dei dispositivi con Testdisk digitando in una finestra di terminale il seguente comando:
sudo testdisk
Utilizzare i menù per recuperare le partizioni.
Gpart
Un altro modo per controllare e ricreare la tabella delle partizioni consiste nell'[:AmministrazioneSistema/InstallareProgrammi:installare] ed utilizzare [apt://gpart gpart].
Digitare in una finestra di terminale il seguente comando
sudo gpart /dev/sda
dove /dev/sda è il dispositivo da recuperare.
È possibile ripristinare la tabella delle partizioni, solo dopo aver verificato con la massima attenzione (viceversa si invita a scrivere su un altro dispositivo), digitando in una finestra di terminale il seguente comando
sudo gpart -W /dev/sda /dev/sda
Creare un immagine di un dispositivo
Per ottenere l'immagine di un dispositivo danneggiato, in preparazione del salvataggio dei file, è disponibile il programma GNU ddrescue installabile tramite il pacchetto [apt://gddrescue gddrescue]. In seguito il suo comando sarà ddrescue.
Per una breve panoramica delle sue funzionalità e per approfondimenti si invita alla lettura del [http://www.gnu.org/software/ddrescue/ddrescue_it.html seguente documento].
Prima di procedere, bisogna tenere presente che i filesystem di tipo [:Hardware/DispositiviPartizioni/MontarePartizioni/Fat:Fat] dispongono di un limite di 4GiB alla dimensione di ciascun file. E' tipico delle unità USB disporre di questo tipo di filesystem. Se si è a conoscenza che l'immagine finale sarà superiore a tale dimensione è necessario utilizzare file system che supporti capacità superiori come ad esempio [:Hardware/DispositiviPartizioni/MontarePartizioni/Ext3:Ext3] o altri.
Per utilizzare GNU ddrescue digitare in una finestra di terminale un comando avente la seguente sintassi:
ddrescue [options] partizione_da_recuperare destinazione_immagine destinazione_file_di_log
Quindi, ad esempio
sudo ddrescue -r 3 /dev/sda /media/usbdrive/image /media/usbdrive/logfile
dove il comando ddrescue di recupererà l'immagine dal dispositivo dev/sda e di salvarla in /media/usbdrive/image; inoltre, creerà un file di log in /media/usbdrive/logfile. L'opzione -r 3 rappresenta il numero di tentativi di lettura che ddrescue farà qualora incontri degli errori. -1 invita il programma ad eseguire un numero infinito di tentativi.
Il passo successivo potrebbe essere:
sudo ddrescue -r 3 -C /dev/sda /media/usbdrive/image /media/usbdrive/logfile
dove rispetto al precedente è stata aggiunta l'opzione -C che invita il programma circoscrivere la lettura all'interno dei file già presenti nel registro (o file di log) creato in precedenza .
Un [http://www.forensicswiki.org/wiki/Ddrescue noto sito] di analisi forense consiglia la seguente procedura:
Creare un immagine copiando all'interno di essa più dati possibili, senza contiere tentativi di lettura nel caso si incontrino degli errori (opzione -n):
ddrescue -n /dev/hda1 imagefile logfile * Riprovare andando più a fondo riprovando 3 volte in presenza di errori di lettura: {{{ ddrescue -d -r 3 /dev/hda1 imagefile logfileSe il comando precedente fallisce riprovare leggendo i settori integralmente:
ddrescue -d -R -r 3 /dev/hda1 imagefile logfile
Altri esempi, presenti sulla documentazione di GNU ddrescue sono i seguenti:
Esempio 1: recuperare una partizione Ext2 da /dev/hda2 salvando l'immagine i dati in /dev/hdb2
ddrescue -r3 /dev/hda2 /dev/hdb2 logfile e2fsck -v -f /dev/hdb2 mount -t ext2 -o ro /dev/hdb2 /mnt
Esempio 2: recupera un Cd-Rom montato su /dev/cdrom:
ddrescue -b 2048 /dev/cdrom cdimage logfile
scrivendo poi cdimage su un Cd-Rom vuoto.
Estrarre i dati da un immagine
Dopo avere creato l'immagine del dispositivo è necessario concentrarsi sul recupero dei dati presenti sull'immagine stessa. Qualora il filesystem non è recuperabile, è possibile comunque tentare di recuperare i singoli file.
Montare le partizioni sull'immagine
Se è stato recuperato l'intero disco, è possibile montare le singole partizioni sull'immagine utilizzando l'opzione "Offset" montando il filesystem "in loop". mmls, disponibile nel pacchetto [apt://sleuthkit sleuthkit] è in grado di mostrare le partizioni che si trovano all'interno di un'immagine:
mmls file -b
DOS Partition Table
Offset Sector: 0
Units are in 512-byte sectors
Slot Start End Length Size Description
00: ----- 0000000000 0000000000 0000000001 0512B Primary Table (#0)
01: ----- 0000000001 0000000031 0000000031 0015K Unallocated
02: 00:01 0000000032 0001646591 0001646560 0803M DOS FAT16 (0x06)
03: 00:00 0001646592 0002013183 0000366592 0179M DOS FAT16 (0x06)Come è possibile vedere il programma mostra più partizioni. In questo esempio, volendo montare la partizione DOS a partire dal blocco 32 (terza riga) bisogna calcolare il numero di byte moltiplicando per 512 (1 blocco uguale 512 byte). In questo caso 32 * 512 = 16384 sarò il byte di inizio della partizione. Quindi montare l'immagine:
sudo mount -o loop,offset=16384 file mnt
Per montare una tipica partizione NTFS creata da Windows usare:
sudo mount -t ntfs -o r,force,loop,offset=32256 file mnt
dove 63 * 512 byte = 32256
Nota: Per disporre di un interfaccia grafica per sleuthkit installare il pacchetto [apt://autopsy autopsy]. Per approfondimenti sul programma si rimanda al [http://www.sleuthkit.org/autopsy/desc.php sito ufficiale]. Si veda anche il resto della presente guida.
Estrarre singoli file dalla partizione recuperata
Foremost
Foremost è un tool da riga di comando in grado di recuperare file da un certo numero di filesystem, inclusi i sistemi Fat, Ext3 e NTFS.
Foremost è in grado di recuperare file da una immagine del disco o dal disco direttamente. Se l'unità è soggetta ad un problema meccanico fare riferimento a quanto detto prima e alla procedura di recupero con gnuddrescue.
Supponendo che i file persi siano su /dev/hda, è necessario creare una cartella scrivibile su un altro disco in cui è possibile inserire i file recuperati (un disco esterno USB capiente ad esempio, di seguito dev/sdb).
Montare il disco esterno e creare al suo interno una cartella chiamata foremost da utilizzare per il recupero:
sudo mount /dev/sdb1 /recovery sudo mkdir /recovery/foremost
Avviare foremost digitando in una finestra di terminale il seguente comando:
sudo foremost -i /dev/hda -o /recovery/foremost
Per avviare foremost su un file immagine semplicemente sostituire il percorso
sudo foremost -i image -o /recovery/foremost
I file recuperati saranno di proprietà dell'utente root. Per cambiare i permessi:
sudo chown -R youruser:youruser /recovery/foremost
Usare l'opzione -w solo per si desidera ottenere un analisi dei file recuperabili:
sudo foremost -w -i /dev/hda -o /recovery/foremost
Per recuperare uno specifico tipo di file usare l'opzione -t:
sudo foremost -t jpg -i /dev/hda -o /recovery/foremost
Tipi di file supportati:
Tipo |
Nota |
jpg |
Support for the JFIF and Exif formats including implementations used in modern digital cameras. |
gif |
|
png |
|
bmp |
Support for windows bmp format. |
avi |
|
exe |
Support for Windows PE binaries, will extract DLL and EXE files along with their compile times. |
mpg |
Support for most MPEG files (must begin with 0x000001BA) |
wav |
|
riff |
This will extract AVI and RIFF since they use the same file format (RIFF). note faster than running each separately. |
wmv |
Note may also extract -wma files as they have similar format. |
mov |
|
ole |
This will grab any file using the OLE file structure. This includes PowerPoint, Word, Excel, Access, and StarWriter |
doc |
Note it is more efficient to run OLE as you get more bang for your buck. If you wish to ignore all other ole files then use this. |
zip |
Note is will extract .jar files as well because they use a similar format. Open Office docs are just zip’d XML files so they are extracted as well. These include SXW, SXC, SXI, and SX? for undetermined OpenOffice files. |
rar |
|
htm |
|
cpp |
C source code detection, note this is primitive and may generate documents other than C code. |
all |
Run all pre-defined extraction methods. [Default if no -t is specified] |
== Scalpel ==
Scalpel is a fast file carver that reads a database of header and footer definitions and extracts matching files from a set of image files or raw device files. It is similar to foremost and may have some improvements.
By default, all file types in the database (/etc/scalpel/scalpel.conf) are commented out. To specify which filetypes you want to carve, you need to edit the file and uncomment each line.
sudo scalpel FILE -o Directory
Where FILE is the image file (or device) and Directory is the output directory.
== Magic Rescue ==
Another program that scans for files using "magic bytes" to identify their presence and type, and which can be extended for many file types using "recipes", can be obtained by installing, using [[InstallingSoftware| any method]], the package {{{magicrescue.
Note that most of the provided recipes need other software installed to work, so open the desired recipes in /usr/share/magicrescue/recipes/ using a text editor and read the comments contained.
If you want to recover (for example) gzip files and PNG images from a partition named /dev/sda1, you can run
mkdir ~/output sudo magicrescue -r gzip -r png -d ~/output /dev/hdb1
This will write all recovered files in a directory output inside your home directory. }}}
Photorec
PhotoRec è un programma di recupero dati creato inizialmente solo per recuperare immagini perse dalla memoria della fotocamera digitale o da dischi fissi. In seguito il supporto è stato esteso anche per file non audio o video. Consente la ricerca di 80 diversi tipi di file. PhotoRec fa parte del pacchetto [apt://testdisk testdisk].
Per avviare Photorec per analizzare un file immagine digitare il seguente comando in una finestra di terminale:
sudo photorec imagefilename
Per recuperare i file direttamente dal dispositivo oggetto di recupero, avviare il programma senza argomenti e selezionare i dispositivi disponibili dal menù:
sudo photorec
Si rimanda a ulteriori risorse (fare anchor) per documenti di approfondimento sul suo utilizzo.
recoverjpeg
recoverjpeg è un programma specifico per l'identificazione e il recupero delle immagini in formato .jpeg.
Installare il pacchetto [apt://recoverjpeg recoverjpeg] e avviarlo digitando in una finestra di terminale il seguente comando:
sudo recoverjpeg /dev/hda1
sostituendo /dev/hda1 con il dispositivo sul quale si desidera indagare.
I file recuperati verranno salvati nella propria cartella Home, ogni immagine sarà salvata nel formato image*.jpg.
[https://help.ubuntu.com/community/DataRecovery/NtfsUndelete NtfsUndelete] può recuperare file da un filesystem NTFS. The Windows and LiveCd versions have a very nice intuitive gui but the linux one is probably stronger and does not have a front-end gui at the moment. Briefly, it has 3 modes The best simple guide i have found so far 24-11-2010) is [http://www.sucka.net/2010/04/recover-deleted-files-with-ntfsundelete-from-a-ubuntu-livecd/ questa]. Obviously with a name like that i was careful about where i opened the page but it was fine. When undeleting chose which files to undelete and where to undelete them too. By default this appears to be the desktop of the OS you are booted into, whether that is a LiveCd or on a different partition or drive. For a LiveCd or LiveUsb you will need to move them onto Usb-stick or safe partition before rebooting as the desktop gets forgotten on LiveCds unless you are using a "Persistent image". To search To undelete, although this might be a little wrong, the"-" at the end worries me. For better information on using ntfsundelete please see the separate page [https://help.ubuntu.com/community/DataRecovery/NtfsUndelete NtfsUndelete], particularly the External Links there.
(Obtained the following from http://www.sleuthkit.org/autopsy/desc.php) The Autopsy Forensic Browser is a graphical interface to the command line digital investigation analysis tools in The Sleuth Kit. Together, they can analyze Windows and UNIX disks and file systems (NTFS, FAT, UFS1/2, Ext2/3). The Sleuth Kit and Autopsy are both Open Source and run on UNIX platforms. As Autopsy is HTML-based, you can connect to the Autopsy server from any platform using an HTML browser. Autopsy provides a "File Manager"-like interface and shows details about deleted data and file system structures.
Autopsy can be run from the "live" CD, but you must specify an address to which you can connect remotely. You must also specify an external disk on which it can save the extracted information. For example, assuming you have an external disk mounted to /media/disk with an autopsy folder on it and your IP address is 192.168.0.1, you can run:
Extract unallocated (deleted) blocks from a disk or disk image. Example: Use any data carving tool to search the output image for files. List file and directory names in a forensic image. fls lists the files and directory names in the image and can display file names of recently deleted files for the directory using the given inode. This includes deleted files. If you have imaged your filesystem to a file named "loopfile", you can list the contents by running: Copy file by inode. icat opens the named image(s) and copies the file with the specified inode number to standard output. Example: fls has shown you the inode number of some files on an image. To recover a file by using th einode number run: sorter - Sort files in an image into categories based on file type. Sorter is a Perl script that analyzes a file system to organize the allocated and unallocated files by file type. Example: This will sort all the files found in /dev/sdc1 and put image files in a directory named "out": Here is a description of a script that will pull all files from an image using fls and icat: http://forums.gentoo.org/viewtopic-t-365703.html Another, similar script which attempts to "rebuild" the filesystem directory structure plus file content: http://matt.matzi.org.uk/2008/07/03/reconstructing-heavily-damaged-hard-drives/
from:How to recover lost files after you accidentally wipe your hard drive Sort certain types of files: Eliminate small photos: Rename jpegs according to exif data: Then, remove duplicates. Copy files with matching strings:
[https://help.ubuntu.com/community/DataRecovery Documento originale] [http://www.psychocats.net/ubuntucat/recovering-windows-files-with-a-ubuntu-cd-iii-deleted-files/ Documento su Photorec] http://www.sleuthkit.org/informer/sleuthkit-informer-14.html#recover http://goinggnu.wordpress.com/2008/02/14/recover-deleted-files-from-memory-card [http://www.caine-live.net/ Distribuzione specifica per l'analisi forense] [http://guide.debianizzati.org/index.php/Recuperare_i_dati_da_un_Hard_Disk_danneggiato Debianizzati.org] Ntfsprogs
ntfsundelete /dev/sda2
ntfsundelete /dev/sda2 -u -i 3689 -o work.doc -d ~
Sleuth Kit and Autopsy
Autopsy
sudo autopsy -d /media/disk/autopsy 192.168.0.1
Sleuthkit
dls inputimage > outputimage
fls loopfile -r -f fat -i raw
r/r 3: test (Volume Label Entry)
r/r * 5: sample.docx
r/r * 7: sample.pptx
r/r * 9: sample.xlsx
icat -r -f fat -i raw loopfile 5 > sample.docx
sudo sorter -h -s -i raw -f fat -d out -C /usr/share/sleuthkit/windows.sort /dev/sdc1
Cleaning up
sudo mkdir recovery/VID recovery/JPG
find recovery/ -name "*.avi" | xargs -i mv {} recovery/VID/
find recovery/ -name "*.mpg" | xargs -i mv {} recovery/VID/
find recovery/ -name "*.jpg" | xargs -i mv {} recovery/JPG/ sudo mkdir recovery/SMALL
find recovery/JPG/ -name "*.jpg" -size -1024k | xargs -i mv {} recovery/SMALL/ find JPG/ -name "*.jpg" | xargs -i jhead -nf%Y%m%d-%H%M%S {}find /var/recovery/JPG/ -name "*a.jpg" | xargs -i mv {} /var/recovery/JPG/DUPS/cd recovery
mkdir ../copy/
grep -l "enter the string of text here" *.doc | xargs -i cp {} ../copy/Ulteriori risorse
