Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "andreas-xavier/Prova6"
Differenze tra le versioni 98 e 101 (in 3 versioni)
Versione 98 del 27/09/2021 10.00.20
Dimensione: 9015
Commento:
Versione 101 del 05/04/2022 19.57.04
Dimensione: 6085
Commento:
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 1: Linea 1:
## page created by wilecoyote
Linea 5: Linea 6:
<<Informazioni(forum="https://forum.ubuntu-it.org/viewtopic.php?f=46&t=647231"; rilasci="21.04 20.04 18.04";)>> <<Informazioni(forum="http://forum.ubuntu-it.org/viewtopic.php?t=648931"; rilasci="22.04 20.04 18.04")>>
Linea 7: Linea 8:
= Introduzione  = = Introduzione =
Linea 9: Linea 10:
'''Foremost''' è uno strumento da riga di comando per il recupero dei file. La tecnica utilizzata è il ''[[https://en.wikipedia.org/wiki/File_carving|data carving]]'', che utilizza le tracce degli header, dei footers e della struttura interna dei dati stessi, senza considerare i metadati del filesystem.<<BR>>
Foremost può operare sia su file immagine, sia su supporti fisici quali unità flash, hard disk, schede di memoria ecc. Supporta diversi tipi di filesystem (Fat16/32, Ext3/4, NTFS ecc.) e moltissimi formati di file (`.jpg`, `.png`, `.zip`, `.avi`, `.pdf`, `.doc`, `.exe`, ecc.).
In questa pagina viene presentata una guida concisa all'uso del programma '''e2fsck''', utile per interdire l'uso da parte del sistema di eventuali blocchi danneggiati fisicamente sul disco rigido, spesso circoscritti a singole partizioni.<<BR>>
'''e2fsck''' è specifico per dischi rigidi con partizioni formattate con [[AmministrazioneSistema/Filesystem|filesystem]] '''ext2''', '''ext3''' e '''ext4'''.
Linea 12: Linea 13:
Sviluppato originariamente da enti governativi statunitensi quali l'Ufficio Investigazioni speciali della ''United States Air Force'' e il ''CISR'' (''Center for Information Systems Security Studies and Research''), è stato successivamente reso di pubblico dominio. Si raccomanda di eseguire i passaggi illustrati di seguito tramite un sistema avviato in modalità '''[[https://wiki.ubuntu-it.org/Installazione/CreazioneLiveUsb|Live]]''', oppure da un altro sistema '''GNU/Linux''' installato su un secondo disco rigido, tramite un ambiente '''[[AmministrazioneSistema/Chroot|Chroot]]''', e previo [[AmministrazioneSistema/ComandiBase#umount|smontaggio]] del disco rigido su cui si vuole operare.
Linea 14: Linea 15:
{{{#!wiki important
Per evitare sovrascritture accidentali di dati, si raccomanda di eseguire il programma su un file immagine di backup a basso livello (a tal fine è possibile usare lo strumento [[AmministrazioneSistema/BackupDelSistema#Backup_con_dd|dd]]), anziché operare direttamente sul supporto di memoria dal quale si vogliono recuperare i file.
{{{#!wiki note
Il programma è concepito per essere utilizzato esclusivamente su hard disk e __non__ su [[https://it.wikipedia.org/wiki/Unità_di_memoria_a_stato_solido|SSD]].
Linea 17: Linea 18:

== Informazioni utili ==

Sintomi tipici di danni fisici agli hard disk possono essere blocchi del sistema, difficoltà o impedimento all'accesso ai dati, rallentamenti nell'uso.<<BR>>
La problematica è causata da un errato movimento dei meccanismi interni dei [[https://it.wikipedia.org/wiki/Disco_magnetico|dischi rigidi magnetici]].

Per verificare la presenza di difetti fisici consultare [[Hardware/DispositiviPartizioni/VerificaDiscoFisso#Controllo_per_difetti_fisici|questa guida]].

Tenere presente che:
 * I danni fisici al disco rigido non sono riparabili; pertanto non aprire l'involucro dell'hard disk per tentare riparazioni.
 * La presenza di danni al disco rigido, per quanti piccoli e limitati, può ridurne drasticamente l'attesa di vita. Eseguire quindi [[AmministrazioneSistema/BackupDelSistema|backup]] frequenti dei dati e provvedere quanto prima alla sostituzione del disco.
 * In presenza invece di danni importanti, usare questa procedura solo come propedeutica all'esecuzione del backup o al [[https://wiki.ubuntu-it.org/AmministrazioneSistema/RecuperoDati|recupero di dati persi]], e sostituire senza indugiare oltre il disco rigido difettato.
Linea 20: Linea 33:
[[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://foremost|foremost]]. Il pacchetto richiesto è preinstallato e non è rimovibile senza compromettere il sistema.
Linea 22: Linea 35:
= Utilizzo =
Linea 24: Linea 36:
Durante l'estrazione dei dati, il programma esegue di default le seguenti azioni:
 * crea una cartella chiamata `output` nella stessa posizione dal quale viene lanciato il comando (ad esempio la '''Home''' dell'utente, se il terminale è su `~`).
 * crea all'interno di questa directory delle sottocartelle corrispondenti al formato dei file che vengono recuperati (ad esempio `jpg`, `txt`, `zip` ecc.). Per consultare tutti i formati di file riconosciuti consultare la [[#ulteriori_risorse|pagina man]] del programma.
 * al termine della procedura elimina eventuali sottocartelle vuote, per le quali non sono stati trovati file corrispondenti.
 * crea all'interno della cartella di salvataggio il file `audit.txt`, contenente un report delle azioni svolte dal programma.
 * attribuisce ai file eventualmente trovati un nome ricavato dall'indirizzo del settore sul quale sono allocati (non considera perciò il nome originario, in quanto il programma non tiene conto dei metadati del filesystem).
= Esecuzione =
Linea 31: Linea 38:
== Utilizzo di base == Tutti i successivi comandi vanno digitati nel [[AmministrazioneSistema/Terminale|terminale]], e molti di essi necessitano dei [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]], procedere quindi con la dovuta cautela.
Linea 33: Linea 40:
Supponendo di voler cercare dei file eliminati in una partizione `/dev/sdb1`, digitare nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{
sudo foremost -i /dev/sdb1
== Individuazione dei blocchi danneggiati ==

Questa parte è propedeutica all'individuazione degli eventuali blocchi danneggiati, delle partizioni in cui sono presenti, e su cui si andrà a operare.

 0. [[Hardware/DispositiviPartizioni/IndividuarePartizioni#lsblk|Individuare]] il filesystem e la partizione nella quale è presente il blocco danneggiato.
 0. [[AmministrazioneSistema/ComandiBase#umount|Smontare]] la partizione col filesystem individuata col comando suddetto.
<<Anchor(danneggiati)>>
 0. Creare una lista dei blocchi danneggiati, tramite il comando:{{{
sudo badblocks -v /dev/sdxy > ~/blocchi-guasti.txt
}}} Sostituire ''xy'' colla lettera e numero della partizione su cui s'opera.

Per visionare la lista degli eventuali blocchi danneggiati, aprire con un [[Ufficio/EditorDiTesto|editor di testo]] il file `~/blocchi-guasti.txt`.

== Isolare i blocchi danneggiati ==

Questa parte può richiedere tempi molto lunghi, in dipendenza della dimensione delle partizioni, della gravità dei danni, delle prestazioni del computer e del tipo di filesystem, non è possibile dare nessuna indicazione sui tempi richiesti.

Prevedere quindi un'adeguata disponibilità di tempo prima di procedere, e __per nessun motivo interrompere__ la procedura tramite il comando:{{{
Ctrl+C
}}}
pena l'alto rischio di compromettere i dati contenuti nelle partizioni.

{{{#!wiki note
Prendere eventuali accorgimenti per le interruzioni di corrente, ad esempio tramite l'uso di un [[https://it.wikipedia.org/wiki/Gruppo_di_continuità|gruppo di continuità]], per evitare danni da mancanze improvvise d'alimentazione.
Linea 37: Linea 66:
== Ricerca da file immagine == Ci sono due modalità per procedere all'operazione:
  * Per cercare, verificare, e riparare l'intera partizione, più lenta e più precisa, digitare il seguente comando:{{{
sudo e2fsck -cfpv /dev/sdxy
}}}
  * Per limitare l'intervento ai soli blocchi danneggiati, più veloce e meno precisa, digitare il seguente comando:{{{
sudo e2fsck -l blocchi-guasti.txt /dev/sdxy
}}} `blocchi-guasti.txt` è il file creato con questo [[#danneggiati|comando]].
Linea 39: Linea 74:
Per il recupero da file di immagine è sufficiente sostituire nel comando il nome del disco o partizione (ad esempio `/dev/sda`) con il nome stesso del file (ad esempio `backup.dd`). In entrambi i casi, sostituire ''xy'' con la lettera e numero della partizione su cui si opera.
Linea 41: Linea 76:
== Ricerca di file specifici == Il significato delle opzioni è come da seguente tabella:
Linea 43: Linea 78:
Per cercare soltanto determinati tipi di file è inoltre possibile usare l'opzione `-t`, con i formati di file separati da una virgola. Ad esempio per cercare in una partizione `/dev/sdb1` soltanto file `.doc` e `.pdf`, digitare nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{
sudo foremost -t doc,pdf -i /dev/sdb1
}}}
È possibile inoltre usare l'opzione `-t all` per il recupero di tutti i tipi di file conosciuti.
||<tablestyle="width:60%;" rowstyle="background-color: #cccccc;" :10%>'''Opzione''' ||<:90%>'''Funzione''' ||
||<style="background-color: #f7f7f7;" :> '''c''' ||<:> Cerca e lista i blocchi danneggiati ||
||<style="background-color: #f7f7f7;" :> '''f''' ||<:> Verifica il filesystem ||
||<style="background-color: #f7f7f7;" :> '''l''' ||<:> Legge il file con la lista dei blocchi danneggiati ||
||<style="background-color: #f7f7f7;" :> '''p''' ||<:> Tenta la riparazione dei blocchi danneggiati, per quanto è possibile ||
||<style="background-color: #f7f7f7;" :> '''v''' ||<:> Lista a schermo quanto viene svolto ||
Linea 48: Linea 85:
== Scelta della cartella di salvataggio ==
Linea 50: Linea 86:
{{{#!wiki important
Per evitare sovrascritture accidentali, con consequente impossibilità di recupero dei file, si raccomanda di __non__ impostare la destinazione di salvataggio nello stesso disco e/o partizione in cui sono presenti i file da recuperare.
}}}
Al termine della procedura sarà possibile provare l'avvio del sistema, dalla propria partizione residente sul disco rigido, oggetto dell'intervento.
Linea 54: Linea 88:
Per specificare una determinata cartella di salvataggio (diversa da `output`, ad esempio denominata `dati`) è possibile usare l'opzione `-o`, come nel seguente esempio:{{{
sudo foremost -i /dev/sdb1 -o /home/utente/dati
}}}
Linea 58: Linea 89:
Qualora la cartella di destinazione non esistesse il programma provvederà a crearla.<<BR>>
Nel caso in cui, invece, fosse già presente apparirà un messaggio simile al seguente:{{{
ERROR: /home/utente/dati is not empty
  Please specify another directory or run with -T.
}}}
= Ulteriori risorse =
 
 * [[http://e2fsprogs.sourceforge.net/|Sito del progetto]]
 * [[https://it.wikipedia.org/wiki/E2fsprogs|Voce enciclopedica]]
Linea 64: Linea 94:
Come suggerito dall'output, sarà possibile a propria scelta:
 * usare una destinazione differente
 * usare l'opzione `-T`. Quest'ultima provvede a creare una nuova cartella con lo stesso nome, ma inoltre contrassegnata con ora e data (prendendo ancora in esame l'esempio precedente, verrà nominata `/home/utente/dati_Sat_Sep_25_16_32_38_2021`).
 {{{#!wiki tip
In questo modo sarà possibile ripetere più volte la ricerca di file, salvando i dati estratti in diverse cartelle, senza modifiche ai risultati di eventuali precedenti operazioni di recovery.
}}}
-------
Linea 71: Linea 96:
= File di configurazione =

Il file di configurazione di '''Foremost''' è `/etc/foremost.conf`.

All'interno del file stesso è possibile consultare le istruzioni (in inglese) utili per aggiungere alla ricerca altri formati di file.<<BR>>
A tale scopo sono infatti presenti diversi esempi commentati che mostrano la sintassi da utilizzare.
Basterà quindi aprire il file, con [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] e con un [[Ufficio/EditorDiTesto|editor di testo]], per decommentare le righe relative ai formati di proprio interesse, aggiungendoli alla ricerca.

Di seguito viene riportato un esempio relativo ai file `.tif`:{{{
# TIF
# tif y 200000000 \x49\x49\x2a\x00
}}}

La sintassi della seconda riga nell'esempio contiene i seguenti campi (separati da '''TAB'''), da sinistra verso destra:
 * estensione
 * [[https://it.wikipedia.org/wiki/Sensibile_alle_maiuscole|case sensitive]] ('''y''' in caso positivo e '''n''' in caso negativo)
 * dimensione massima del file (espressa in byte)
 * [[https://it.wikipedia.org/wiki/Header_file|header]]
 * footer (opzionale, può essere omesso)

{{{#!wiki note
Diversi formati di file presenti in `/etc/foremost.conf` sono già supportati nativamente. È infatti presente in corrispondenza la dicitura: «`(NOTE THESE FORMATS HAVE BUILTIN EXTRACTION FUNCTION)`».
}}}

== Aggiungere supporto a nuovi formati di file ==

Basandosi sull'esempio precedente, è quindi possibile aggiungere alla ricerca ulteriori formati, non presenti nel file di configurazione.

Di seguito viene riportato l'esempio di aggiunta dei file in formato ''[[https://it.wikipedia.org/wiki/Free_Lossless_Audio_Codec|flac]]'':{{{
flac y 30000000 \x66\x4c\x61\x43\x00\x00\x00\x22
}}}

{{{#!wiki tip
Per conoscere o controllare l'header di un tipo di file, può talvolta tornare utile il comando: `hd -c nome_file.estensione.file|head` (sostituire `nome_file` e `estensione.file` con le relative voci).
}}}

= Esempio concreto di utilizzo =

Di seguito sono illustrati tutti i passaggi necessari per estrarre dei file inavvertitamente cancellati su un ipotetico disco `/dev/sda`.<<BR>>
Si ipotizza, inoltre, che i file da recuperare vengano salvati su un secondo disco `/dev/sdb`. Si dovrà quindi montare su quest'ultimo una cartella appositamente creata per salvare i file recuperati (ad esempio `/recovery/foremost`), modificando infine i permessi di quest'ultimi.
 
 0. Se necessario, [[Hardware/DispositiviPartizioni/IndividuarePartizioni|individuare]] le partizioni presenti.
 0. [[AmministrazioneSistema/ComandiBase#mkdir|Creare]] sul disco `/dev/sda` la cartella `/recovery/foremost`:{{{
sudo mkdir -p /recovery/foremost
}}}
 0. [[AmministrazioneSistema/ComandiBase#mount|Montare]] il disco `/dev/sdb` nella cartella `/recovery`:{{{
sudo mount /dev/sdb /recovery
}}}
 0. Avviare '''foremost''' digitando il comando:{{{
sudo foremost -i /dev/sda -o /recovery/foremost
}}}
 0. I file recuperati saranno di proprietà dell'utente '''root'''. Per cambiare i [[AmministrazioneSistema/PermessiFile|permessi]] digitare il seguente comando:{{{
sudo chown -R nomeutente:nomegruppo /recovery/foremost
}}}
 sostituendo «`nomeutente:nomegruppo`» (rappresentano rispettivamente il nome dell'utente e il nome del gruppo di appartenenza; generalmente utente e gruppo hanno lo stesso identificativo).
 0. Terminato il recupero, sarà possibile [[AmministrazioneSistema/ComandiBase#umount|smontare]] il disco esterno con il comando:{{{
sudo umount /dev/sdb
}}}

<<Anchor(ulteriori_risorse)>>
= Ulteriori risorse =

 * [[http://foremost.sourceforge.net/|Pagina ufficiale del progetto]]
 * [[https://en.wikipedia.org/wiki/Foremost_(software)|Voce enciclopedica]] (in inglese)
 * [[http://manpages.ubuntu.com/manpages/focal/en/man8/foremost.8.html|Pagina man]]
 * [[https://linuxconfig.org/how-to-recover-deleted-files-with-foremost-on-linux | Guida originae]] (in inglese)
 * [[AmministrazioneSistema/RecuperoDati|Portale recupero dati]]

----
CategoryHomepage
##CategoryAmministrazione
#CategoryHardware


Guida verificata con Ubuntu: 22.04

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

In questa pagina viene presentata una guida concisa all'uso del programma e2fsck, utile per interdire l'uso da parte del sistema di eventuali blocchi danneggiati fisicamente sul disco rigido, spesso circoscritti a singole partizioni.
e2fsck è specifico per dischi rigidi con partizioni formattate con filesystem ext2, ext3 e ext4.

Si raccomanda di eseguire i passaggi illustrati di seguito tramite un sistema avviato in modalità Live, oppure da un altro sistema GNU/Linux installato su un secondo disco rigido, tramite un ambiente Chroot, e previo smontaggio del disco rigido su cui si vuole operare.

Il programma è concepito per essere utilizzato esclusivamente su hard disk e non su SSD.

Informazioni utili

Sintomi tipici di danni fisici agli hard disk possono essere blocchi del sistema, difficoltà o impedimento all'accesso ai dati, rallentamenti nell'uso.
La problematica è causata da un errato movimento dei meccanismi interni dei dischi rigidi magnetici.

Per verificare la presenza di difetti fisici consultare questa guida.

Tenere presente che:

  • I danni fisici al disco rigido non sono riparabili; pertanto non aprire l'involucro dell'hard disk per tentare riparazioni.
  • La presenza di danni al disco rigido, per quanti piccoli e limitati, può ridurne drasticamente l'attesa di vita. Eseguire quindi backup frequenti dei dati e provvedere quanto prima alla sostituzione del disco.

  • In presenza invece di danni importanti, usare questa procedura solo come propedeutica all'esecuzione del backup o al recupero di dati persi, e sostituire senza indugiare oltre il disco rigido difettato.

Installazione

Il pacchetto richiesto è preinstallato e non è rimovibile senza compromettere il sistema.

Esecuzione

Tutti i successivi comandi vanno digitati nel terminale, e molti di essi necessitano dei privilegi di amministrazione, procedere quindi con la dovuta cautela.

Individuazione dei blocchi danneggiati

Questa parte è propedeutica all'individuazione degli eventuali blocchi danneggiati, delle partizioni in cui sono presenti, e su cui si andrà a operare.

  1. Individuare il filesystem e la partizione nella quale è presente il blocco danneggiato.

  2. Smontare la partizione col filesystem individuata col comando suddetto.

  1. Creare una lista dei blocchi danneggiati, tramite il comando:

    sudo badblocks -v /dev/sdxy > ~/blocchi-guasti.txt

    Sostituire xy colla lettera e numero della partizione su cui s'opera.

Per visionare la lista degli eventuali blocchi danneggiati, aprire con un editor di testo il file ~/blocchi-guasti.txt.

Isolare i blocchi danneggiati

Questa parte può richiedere tempi molto lunghi, in dipendenza della dimensione delle partizioni, della gravità dei danni, delle prestazioni del computer e del tipo di filesystem, non è possibile dare nessuna indicazione sui tempi richiesti.

Prevedere quindi un'adeguata disponibilità di tempo prima di procedere, e per nessun motivo interrompere la procedura tramite il comando:

Ctrl+C

pena l'alto rischio di compromettere i dati contenuti nelle partizioni.

Prendere eventuali accorgimenti per le interruzioni di corrente, ad esempio tramite l'uso di un gruppo di continuità, per evitare danni da mancanze improvvise d'alimentazione.

Ci sono due modalità per procedere all'operazione:

  • Per cercare, verificare, e riparare l'intera partizione, più lenta e più precisa, digitare il seguente comando:

    sudo e2fsck -cfpv /dev/sdxy
  • Per limitare l'intervento ai soli blocchi danneggiati, più veloce e meno precisa, digitare il seguente comando:

    sudo e2fsck -l blocchi-guasti.txt /dev/sdxy

    blocchi-guasti.txt è il file creato con questo comando.

In entrambi i casi, sostituire xy con la lettera e numero della partizione su cui si opera.

Il significato delle opzioni è come da seguente tabella:

Opzione

Funzione

c

Cerca e lista i blocchi danneggiati

f

Verifica il filesystem

l

Legge il file con la lista dei blocchi danneggiati

p

Tenta la riparazione dei blocchi danneggiati, per quanto è possibile

v

Lista a schermo quanto viene svolto

Al termine della procedura sarà possibile provare l'avvio del sistema, dalla propria partizione residente sul disco rigido, oggetto dell'intervento.

Ulteriori risorse


#CategoryHardware