Dimensione: 5254
Commento: nuovo stile note/avvisi/suggerimenti
|
Dimensione: 7211
Commento: Aggiornamento wiki Gennaio 2021
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 4: | Linea 4: |
<<Indice(depth=1)>> <<Informazioni(rilasci="17.04 16.04"; forum="http://forum.ubuntu-it.org/viewtopic.php?t=430020")>> |
<<Indice(depth=2)>> <<BR>> <<Informazioni(forum="http://forum.ubuntu-it.org/viewtopic.php?t=430020";rilasci="14.04 16.04 18.04 20.04")>> |
Linea 9: | Linea 10: |
In questo documento verrà mostrato come creare un'immagine di un dispositivo danneggiato e come estrarre i dati da essa. | Questa guida illustra i programmi dedicati alla creazione di file immagini da un disco rigido, o altro supporto d'archiviazione danneggiato e come estrarre i dati da esso. |
Linea 11: | Linea 12: |
= Creare un immagine di un dispositivo = | Tutti i comandi mostrati in questa guida devono essere eseguiti nel [[AmministrazioneSistema/Terminale|terminale]]. |
Linea 13: | Linea 14: |
Per ottenere l'immagine di un dispositivo danneggiato, in preparazione del salvataggio dei file, è disponibile il programma '''GNU ddrescue'''. | = Creazione copia disco rigido di lavoro = |
Linea 15: | Linea 16: |
[[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://gddrescue|gddrescue]]. | [[Hardware/DispositiviPartizioni/IndividuarePartizioni#parted|Individuare]] e annotare l'identificativo, le partizioni e i file system del disco rigido da recuperare, nonché l'identificativo del disco rigido usato per il salvataggio. |
Linea 17: | Linea 18: |
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]]. | == Tramite dd == '''dd''' è un programma volto a copiare, convertire e formattare file, da usare tramite linea di comando. Il programma è preinstallato tramite il pacchetto [[apt://coreutils|coreutils]]. 0. Eseguire la copia del disco digitando il comando:{{{ sudo dd if=/dev/sdx of=/dev/sdy bs=1M }}} Sostituire `/dev/sdx` coll'identificativo del disco da copiare e `/dev/sdy` coll'identificativo del disco su cui copiare. Per approfondire l'argomento consultare la [[#ur|pagina man]]. == Tramite ddrescue == '''GNU ddrescue''' è un programma volto a copiare, convertire e formattare file, con in più la funzione per provare di recuperare diversi tipi di errori. Il programma non essendo preinstallato richiede [[AmministrazioneSistema/InstallareProgrammi|l'installazione]] del pacchetto [[apt://gddrescue|gddrescue]]. 0. Copiare da disco a disco creando il file `log` contenente una lista sesquipedale degli errori trovati, digitando il comando:{{{ ddrescue -n /dev/sdx /dev/sdy listaerrori.log }}} 0. Copiare da disco a disco creando il file `log` contenente gli errori corretti, digitando il comando:{{{ ddrescue -r 3 /dev/sdx /dev/sdy cosariparato.log }}} 0. Copiare da disco a disco creando il file `log` contenente gli errori corretti, limitando la lettura all'interno dei file già listati nel file `log` precedentemente creato, digitando il comando:{{{ ddrescue -r 3 -C /dev/sdx /dev/sdy cosariparato.log }}} Sostituire `/dev/sdx` coll'identificativo del disco da copiare e `/dev/sdy` coll'identificativo del disco su cui copiare. 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]], nonché della afferente [[#ur|pagine man]]. |
Linea 20: | Linea 53: |
Prima di proseguire, si noti che i filesystem di tipo [[http://it.wikipedia.org/wiki/File_Allocation_Table|Fat]] dispongono di un limite di 4GiB per la dimensione massima dei file. Tipicamente le unità USB utilizzano questo tipo di filesystem. Se si è a conoscenza che l'immagine finale sarà superiore a tale dimensione è necessario utilizzare dei filesystem che supportino capacità superiori per il singolo file (ad esempio, [[http://it.wikipedia.org/wiki/Ext3|Ext3]] o altri).}}} | Entrambi i 2 programmi per essere eseguiti richiedono una quantità di tempo più o meno cospicua, in funzione e dipendenza della dimensione del disco da recuperare e delle prestazioni del proprio computer. }}} |
Linea 22: | Linea 56: |
* 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 }}} * Ad esempio il seguente comando: {{{ sudo ddrescue -r 3 /dev/sda /media/usbdrive/nome_immagine /media/usbdrive/logfile }}} recupererà l'immagine dal dispositivo «dev/sda» e la salverà in «/media/usbdrive/nome_immagine». Inoltre, creerà un file di [[http://it.wikipedia.org/wiki/Log|log]] in «/media/usbdrive/logfile». L'opzione '''-r 3''' rappresenta il numero di tentativi di rilettura che ''ddrescue'' eseguirà 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/nome_immagine /media/usbdrive/logfile }}} dove rispetto al precedente è stata aggiunta l'opzione '''-C''' che invita il programma a circoscrivere la lettura all'interno dei file già presenti nel registro (file di log) creato in precedenza. |
{{{#!wiki note Prima di proseguire, si noti che i filesystem di tipo [[http://it.wikipedia.org/wiki/File_Allocation_Table|Fat]] dispongono di un limite di 4GiB per la dimensione massima dei file. Tipicamente le unità USB utilizzano questo tipo di filesystem. Se si è a conoscenza che l'immagine finale sarà superiore a tale dimensione è necessario utilizzare dei filesystem che supportino capacità superiori per il singolo file (ad esempio, [[http://it.wikipedia.org/wiki/Ext4|Ext4]] o altri).}}} |
Linea 33: | Linea 59: |
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 alcun tentativo di lettura nel caso si incontrino degli errori (opzione '''-n'''): {{{ |
In un sito di analisi forense, [[http://www.forensicswiki.org/wiki/Ddrescue|il cui link non è più attivo]], si consigliava la seguente procedura: 0. Creare un immagine copiando all'interno di essa quanti più dati possibili, senza alcun tentativo di lettura nel caso si incontrino degli errori (opzione '''-n'''): {{{ |
Linea 37: | Linea 64: |
* Riprovare tentando 3 volte in presenza di errori di lettura: {{{ | 0. Riprovare tentando 3 volte in presenza di errori di lettura: {{{ |
Linea 40: | Linea 67: |
* Se il comando precedente fallisce riprovare leggendo i settori integralmente: {{{ | 0. Se il comando precedente fallisce riprovare leggendo i settori integralmente: {{{ |
Linea 47: | Linea 74: |
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 [[AmministrazioneSistema/RecuperoDati/Estrazione|recuperare i singoli file]]. | Dopo avere creato l'immagine del dispositivo è necessario passare al recupero dei dati presenti nell'immagine medesima. Qualora il filesystem non è recuperabile, è possibile comunque tentare di [[AmministrazioneSistema/RecuperoDati/Estrazione|recuperare i singoli file]]. |
Linea 49: | Linea 76: |
== Montare le partizioni sull'immagine == | == Individuare le partizioni nell'immagine == |
Linea 51: | Linea 78: |
Se è stato recuperato l'intero disco, è possibile montare le singole partizioni utilizzando il comando: {{{ mount }}} e le opzioni '''loop''' e '''offset'''. |
Se è stato recuperato l'intero disco, occorre prima individuare le singole partizioni nel file immagine. |
Linea 55: | Linea 80: |
'''mmls''', [[AmministrazioneSistema/InstallareProgrammi|installabile]] dal pacchetto [[apt://sleuthkit | sleuthkit]] è in grado di mostrare le partizioni che si trovano all'interno dell'immagine. | All'uopo viene utile il programma '''mmls''', [[AmministrazioneSistema/InstallareProgrammi|installabile]] tramite il pacchetto [[apt://sleuthkit | sleuthkit]], che è in grado di mostrare le partizioni che si trovano all'interno del file immagine. |
Linea 57: | Linea 82: |
* Digitare in una finestra di terminale il seguente comando: {{{ | 0. Per listare le partizioni contenute nel file immagine, digitare il comando:{{{ |
Linea 60: | Linea 85: |
* Un possibile output potrebbe essere il seguente: {{{ | Per approfondire l'uso del programma consultare la [[#ur|pagina man]]. Per ulteriori informazioni sulla suite '''The Sleutht``Kit''' consultare [[https://wiki.ubuntu-it.org/AmministrazioneSistema/RecuperoDati/Sleuthkit&Autopsy|questa pagina]]. == Montare le partizioni nell'immagine == Per montare le singole partizioni individuate nel file immagine, occorre usare il comando '''mount''' congiuntamente alle opzioni '''loop''' e '''offset''' del comando '''losetup'''. Un esempio di partizioni contenute in un file immagine potrebbe essere la schermata seguente:{{{ |
Linea 71: | Linea 105: |
* In questo esempio, volendo montare la partizione DOS a partire dal blocco numero 32 bisognerà calcolare il numero di byte moltiplicandoli per 512 (un blocco è uguale 512 byte). In questo caso 32 * 512 = 16384 sarà il byte di inizio della partizione. Quindi montare l'immagine: {{{ | * In questo esempio, volendo montare la partizione DOS a partire dal blocco numero 32 bisognerà calcolare il numero di byte moltiplicandoli per 512 (la dimensione del blocco mostrata nell'output è di 512 byte). In questo caso 32 * 512 = 16384 sarà il byte di inizio della partizione. 0. Montare l'immagine individuata digitando il comando:{{{ |
Linea 74: | Linea 109: |
* Per montare una ipotetica partizione NTFS sarebbe possibile usare: {{{ | 0. Per montare una ipotetica partizione NTFS usare il comando:{{{ |
Linea 76: | Linea 111: |
}}} dove 32256 deriva da: blocco 63 * 512 byte. | }}} dove 32256 deriva da: blocco 63 * 512 byte. |
Linea 78: | Linea 113: |
Per approfondire l'argomento consultare le rispettive [[#ur|pagine man]]. <<Anchor(ur)>> |
|
Linea 80: | Linea 118: |
* [[http://manpages.ubuntu.com/manpages/maverick/en/man1/ddrescue.1.html|Pagina man ddrescue]] * [[http://www.sleuthkit.org/sleuthkit/man/mmls.html|Pagina man mmls]] |
* [[http://manpages.ubuntu.com/manpages/focal/en/man1/dd.1.html|Pagina man dd]] * [[http://manpages.ubuntu.com/manpages/focal/it/man1/ddrescue.1.html|Pagina man ddrescue]] * [[http://manpages.ubuntu.com/manpages/focal/it/man8/mount.8.html|Pagina man mount]] * [[http://manpages.ubuntu.com/manpages/focal/en/man8/losetup.8.html|Pagina man losetup]] * [[http://manpages.ubuntu.com/manpages/focal/en/man1/mmls.1.html|Pagina man mmls]] |
Problemi in questa pagina? Segnalali in questa discussione
Introduzione
Questa guida illustra i programmi dedicati alla creazione di file immagini da un disco rigido, o altro supporto d'archiviazione danneggiato e come estrarre i dati da esso.
Tutti i comandi mostrati in questa guida devono essere eseguiti nel terminale.
Creazione copia disco rigido di lavoro
Individuare e annotare l'identificativo, le partizioni e i file system del disco rigido da recuperare, nonché l'identificativo del disco rigido usato per il salvataggio.
Tramite dd
dd è un programma volto a copiare, convertire e formattare file, da usare tramite linea di comando.
Il programma è preinstallato tramite il pacchetto coreutils.
Eseguire la copia del disco digitando il comando:
sudo dd if=/dev/sdx of=/dev/sdy bs=1M
Sostituire /dev/sdx coll'identificativo del disco da copiare e /dev/sdy coll'identificativo del disco su cui copiare.
Per approfondire l'argomento consultare la pagina man.
Tramite ddrescue
GNU ddrescue è un programma volto a copiare, convertire e formattare file, con in più la funzione per provare di recuperare diversi tipi di errori.
Il programma non essendo preinstallato richiede l'installazione del pacchetto gddrescue.
Copiare da disco a disco creando il file log contenente una lista sesquipedale degli errori trovati, digitando il comando:
ddrescue -n /dev/sdx /dev/sdy listaerrori.log
Copiare da disco a disco creando il file log contenente gli errori corretti, digitando il comando:
ddrescue -r 3 /dev/sdx /dev/sdy cosariparato.log
Copiare da disco a disco creando il file log contenente gli errori corretti, limitando la lettura all'interno dei file già listati nel file log precedentemente creato, digitando il comando:
ddrescue -r 3 -C /dev/sdx /dev/sdy cosariparato.log
Sostituire /dev/sdx coll'identificativo del disco da copiare e /dev/sdy coll'identificativo del disco su cui copiare.
Per una breve panoramica delle sue funzionalità e per approfondimenti, si invita alla lettura del seguente documento, nonché della afferente pagine man.
Entrambi i 2 programmi per essere eseguiti richiedono una quantità di tempo più o meno cospicua, in funzione e dipendenza della dimensione del disco da recuperare e delle prestazioni del proprio computer.
Prima di proseguire, si noti che i filesystem di tipo Fat dispongono di un limite di 4GiB per la dimensione massima dei file. Tipicamente le unità USB utilizzano questo tipo di filesystem. Se si è a conoscenza che l'immagine finale sarà superiore a tale dimensione è necessario utilizzare dei filesystem che supportino capacità superiori per il singolo file (ad esempio, Ext4 o altri).
In un sito di analisi forense, il cui link non è più attivo, si consigliava la seguente procedura:
Creare un immagine copiando all'interno di essa quanti più dati possibili, senza alcun tentativo di lettura nel caso si incontrino degli errori (opzione -n):
sudo ddrescue -n /dev/sda /media/usbdrive/nome_immagine /media/usbdrive/logfile
Riprovare tentando 3 volte in presenza di errori di lettura:
sudo ddrescue -d -r 3 /dev/sda /media/usbdrive/nome_immagine /media/usbdrive/logfile
Se il comando precedente fallisce riprovare leggendo i settori integralmente:
sudo ddrescue -d -M -r 3 /dev/sda /media/usbdrive/nome_immagine /media/usbdrive/logfile
Estrarre i dati da un immagine
Dopo avere creato l'immagine del dispositivo è necessario passare al recupero dei dati presenti nell'immagine medesima. Qualora il filesystem non è recuperabile, è possibile comunque tentare di recuperare i singoli file.
Individuare le partizioni nell'immagine
Se è stato recuperato l'intero disco, occorre prima individuare le singole partizioni nel file immagine.
All'uopo viene utile il programma mmls, installabile tramite il pacchetto sleuthkit, che è in grado di mostrare le partizioni che si trovano all'interno del file immagine.
Per listare le partizioni contenute nel file immagine, digitare il comando:
mmls nome_immagine -B
Per approfondire l'uso del programma consultare la pagina man.
Per ulteriori informazioni sulla suite The SleuthtKit consultare questa pagina.
Montare le partizioni nell'immagine
Per montare le singole partizioni individuate nel file immagine, occorre usare il comando mount congiuntamente alle opzioni loop e offset del comando losetup.
Un esempio di partizioni contenute in un file immagine potrebbe essere la schermata seguente:
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)
- In questo esempio, volendo montare la partizione DOS a partire dal blocco numero 32 bisognerà calcolare il numero di byte moltiplicandoli per 512 (la dimensione del blocco mostrata nell'output è di 512 byte). In questo caso 32 * 512 = 16384 sarà il byte di inizio della partizione.
Montare l'immagine individuata digitando il comando:
sudo mount -o loop,offset=16384 nome_immagine /mnt
Per montare una ipotetica partizione NTFS usare il comando:
sudo mount -t ntfs -o r,force,loop,offset=32256 file /mnt
dove 32256 deriva da: blocco 63 * 512 byte.
Per approfondire l'argomento consultare le rispettive pagine man.