Come sono disposti i file in ext2 / ext3 / ext4?


8

Qualche giorno fa tutti i miei metadati su una scheda flash in formato ext4 sono stati sovrascritti.

Ora speculerò su come è successo. Questa è pura speculazione. È successo subito dopo aver usato una carta diversa. L'etichetta del volume sulla scheda è ora uguale all'altra scheda. Quindi sospetto di non aver sincronizzato / smontato l'altra carta, quando l'ho estratta. Il lettore di schede non avvisa correttamente il sistema quando viene estratta una scheda, quindi la successiva sincronizzazione generata dal sistema, il sistema non sapeva che avevo cambiato le carte e sovrascriveva i metadati.

La prima cosa che ho fatto quando è successo è creare un'immagine usando dd. La seconda cosa che ho fatto è stata rendere l'immagine di sola lettura. La terza cosa che ho fatto è creare una copia scrivibile dell'immagine.

Ho scoperto photorec, che è riuscito a recuperare alcune cose, ma non tutte. Penso che uno dei motivi di ciò sia che non è distruttivo.

Poiché alcuni dei file recuperati sono di testo, sospetto che photorec utilizzi informazioni minime sul formato del file, se presenti.

Per provare a recuperare uno qualsiasi degli altri file dalla scheda, avrei bisogno di sapere come sono disposti i file in ext2. Ho il sospetto che la base sia che i file siano suddivisi in blocchi, che sono scritti in settori e le informazioni su come trovare il settore successivo sono scritte in qualche modo nel settore attuale.

Quello che mi serve per procedere sono le informazioni su come è scritto il puntatore al settore successivo.

PS: sto leggendo il codice photorec, ma ho dei problemi a leggerlo. Che sia io o che il codice sia brutto, non lo so.

PPS: ho trovato alcune informazioni su come sono strutturati i file system ext, ma non riesco a trovare le informazioni di base sul layout dei file.

Risposte:


4

PhotoRec esegue la scansione di un disco (o immagine del disco) alla ricerca di blocchi contigui di formati di file di byte che sembrano noti (ad esempio, è in grado di riconoscere JFIF / EXIF ​​(JPEG) dalle intestazioni di segmento). Abbastanza semplice ma limitato.

Il kit Sleuth è un ottimo strumento per scavare nei filesystem. Con un po 'di attenzione (e scripting dei suoi strumenti e modifica esadecimale dell'immagine del disco quando va fuori strada), può essere utilizzato per il recupero.

Per uno strumento che comprende più profondamente ext, prova ext4magic ? (Non ho ancora avuto bisogno di usare questo ancora.)

Documentation/filesystems/ext2.txtnei sorgenti del kernel ha una panoramica di alto livello della struttura generale. L'Ext4 Wiki ha una buona informazione, tra cui Ext4 layout del disco contenente maggiori dettagli (in gran parte per l'applicazione ext [23] pure).

Sì, i dati di un file vengono suddivisi in blocchi. In ext2, ogni file è rappresentato da un inode che contiene blocchi diretti (puntatori a blocchi di dati), blocchi indiretti (che contengono puntatori a blocchi diretti), doppi blocchi indiretti e tripli blocchi indiretti. Non ci sono backlink, quindi per trovare i fratelli di un blocco di dati, dovrai scansionare tutti gli inode e bloccare i puntatori per trovare prima il suo proprietario.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.