PDA

View Full Version : Struttura della Master File Table, diversi tipi di formattazione, recupero dati


havanalocobandicoot
10-02-2009, 20:27
Apro questa discussione per non incasinare ulteriormente l'altra dove si era cominciato il discorso (link (http://www.hwupgrade.it/forum/showthread.php?p=26240961)).

Con la formattazione veloce vengono cancellate solo alcune decine di voci nella MFT, con quella approfondita un centinaio. Tutte le altre rimangono come sono, solo col flag tolto. Nessuna delle due formattazioni tocca effettivamente i dati.
Io per formattazione approfondita intendo quella che riscrive fisicamente tutta la superficie magnetica del disco con stringhe di zeri casuali. Pensavo che la formattazione veloce (quella che si fa all'interno di Windows, ad esempio, o con i classici programmi di partizionamento) cancellasse tutta la MFT e non solo una parte.
In sintesi, nella mia idea c'era:
- formattazione veloce: velocissima (al massimo qualche minuto), che cancella tutta la MFT;
- formattazione approfondita: lenta (circa 3 h/TB), che cancella MFT e riscrive i dati;
- formattazione a basso livello: ultra lenta, che non so se cancella MFT e/o riscriva i dati, ma ricrea fisicamente cluster e struttura del disco, e oggi è bene che la facciano solo i produttori.

Mi vorresti far capire meglio? :wtf:

la voce relativa ad un file e' cancellata dalla MFT il nome e gli attributi sono persi, e recuperando con i programmi che fanno lettura sequenziale si ottengono i famosi file senza nome e senza estensione.
L'estensione si recupera dalla firma digitale per la gran parte dei tipi piu' comuni.
Per lo meno i file hanno la loro dimensione originale (quindi con cluster la maggior parte dei casi semivuoti) oppure quella su disco (cioè vengono copiati in RAW anche le parti, ad esempio finali, dei cluster che col file non c'entrava niente)? Quali programmi effettuano questo tipo di restore?
Io so solo che la firma digitale sono alcune stringhe di bit che possono essere all'inizio o alla fine del disco, ma non so nient'altro.

CRL
10-02-2009, 23:53
La formattazione esiste ad alto livello, ovvero fatta da s.o., e a basso livello, che era fatta da software del produttore, e oggi praticamente non esiste più.
Nelle nostre FAQ di sezione sono trattate per esteso.

Tra quelle ad alto livello, per esempio da windows, si può fare la rapida o l'approfondita. Nessuna delle due tocca i dati, che rimangono dove sono, ma la prima cancella solo le prime voci della MFT, mentre la seconda ne cancella un centinaio buono.

Quella a basso livello oggi la fanno solo in fabbrica, è rimasto solo il nome, che corrisponde ad uno zero fill, ovvero scrivere zeri su tutta la superficie del disco. Le utility che oggi dicono di fare una formattazione a basso livello in realtà fanno uno zero fill.

Per il secondo discorso, tecnicamente chiamato slack space, è molto complesso, perchè esiste di due tipi tra l'altro, comunque quello che importa sul versante recupero a livello non forense è che la gran parte dei file hanno una stringa all'inizio e alla fine tipica di quel tipo di file, e cercando queste firme digitali molti programmi di recupero sono capaci di trovare ad esempio le immagini o i video o decine di altri file specifici semplicemente scandagliando il disco alla ricerca di queste firme, e considerando tutto ciò che c'è in mezzo come il file in questione. Spesso è vero e recuperano così file orfani, cioè senza corrispondenza nella MFT, insieme ad altri spezzoni di file o altra roba che magari non è ciò che si cerca. Ad esempio visto che le jpg salvano l'anteprima che si vede da windows separatamente ma sempre all'interno del file, molto spesso si recuperano due file distinti, uno con l'anteprima che è spesso intatto perchè piccolo, e uno per l'immagine effettiva, che invece può essere parziale o portare problemi a causa di una eventuale frammentazione.

Programmi che fanno il raw read, ovvero la lettura sequenziale dei settori alla ricerca di file orfani, ce ne sono moltissimi, mentre i dettagli su come ognuno di essi gestisce lo slack space è una cosa mai documentata, e infatti in campo forense è uno dei nodi principali, perchè insieme ai dati alcuni software potrebbero tirarsi dietro altra roba, o al contrario lasciar fuori dati nascosti artificialmente nello slack space.
Comunque sono questioni di cui l'utente anche esperto può non preoccuparsi durante il recupero dati.

- CRL -

psychok9
11-02-2009, 02:05
Complimenti CRL, discussione davvero interessante.
Io pensavo invece, come havanalocobandicoot, che quella veloce cancellasse la FAT/MFT/etc... Mi pare che tral'altro quando usavo Diskeeper su hard disk nuovi e formattati mi segnalava infatti una MFT piccola e da "ottimizzare", ovvero secondo lui allargandola e predisponendola ai futuri files, avrei avuto migliori performance e minore deframmentazione.
L'altra sera comunque credo di aver fatto una zero-fill (seagate tools -> full erase)...

havanalocobandicoot
17-03-2009, 21:57
Non mi è chiaro questo concetto:

Tra quelle ad alto livello, per esempio da windows, si può fare la rapida o l'approfondita. Nessuna delle due tocca i dati, che rimangono dove sono, ma la prima cancella solo le prime voci della MFT, mentre la seconda ne cancella un centinaio buono.
Come si fa a scegliere da Windows il tipo di formattazione (rapida o approfondita)?
Che senso ha che un disco formattato abbia gran parte della MFT della vecchia formattazione? :wtf:
La formattazione approfondita impiega tanto tempo? Se si, non capisco perché non tocca i dati.

CRL
17-03-2009, 22:36
Quando decidi di formattare una partizione, da gestione disco, c'è la possibilità di selezionare la voce "esegui formattazione rapida", se non lo fai viene fatta la lenta.

Quella approfondita impiega più tempo perchè cancella più voci della MFT, e perchè esegue un controllo dello spazio della partizione.

Forse non sono stato chiarissimo, riprovo.

La logica dietro al discorso cancellazione è che in tutti i file system ciò che distingue uno spazio utilizzato da uno disponibile è solo un flag booleano, e non il fatto che realmente sia vuoto. Anche perchè vuoto non ha molto senso, una sequenza di zeri è comunque un dato, e la polarizzazione è comunque o 0 o 1. Quindi non c'è una operazione che consente di cancellare effettivamente un dato, o parimenti una voce della MFT, se non quella di scriverci sopra un valore che convenzionalmente sono zeri. E' solo il flag che poi dice se quello spazio è in uso o meno, e il s.o. per rapidità opera solo sul flag quando si cancella qualcosa. Se invece si formatta, il s.o. si prende la briga di sovrascrivere (credo con zeri) parte della MFT, e se si sceglie quella approfondita lo fa per una parte maggiore, ed il resto della MFT e tutta l'area dati non la tocca, a parte il fatto di settare tutti i flag della rimanente parte della MFT su "non in uso". In questo modo la MFT vecchia risulta in parte sovrascritta (e quindi i file che linkava sono acora disponibili, ma i nomi file ad esempio sono persi), e in parte risulta disattivata, ma procedendo con un recupero dati è possibile leggere queste voci, ignorando il fatto che siano marchiate come non in uso, e quindi andare a recuperare i file completi di nome e tutto.

Spero sia più chiaro ora.

- CRL -

MM
17-03-2009, 22:53
Innanzitutto la formattazione "approfondita" o "lenta" è un termine coniato ultimamente in questa sezione.
Esiste la formattazione e funziona in un certo modo e dura un certo tempo, proporzionale alle dimensioni del disco
In tempi moderni, ove il tempo assume un valore enorme, si è inventata la formattazione veloce. Punto e basta ;)

Non mi è chiaro questo concetto:

Come si fa a scegliere da Windows il tipo di formattazione (rapida o approfondita)?

Hai mai installato windows? Oppure hai mai formattato una partizione da Windows? ;)

Che senso ha che un disco formattato abbia gran parte della MFT della vecchia formattazione? :wtf:

Lo stesso senso che ha avere i dati sul disco, ma non essere indirizzati quindi non resi disponibili. Se i dati non ci sono o non sono indirizzati, il disco appare vuoto, se MFT è piena, ma non ha etichette leggibili, risulta vuota e nuovamente scrivibile ;)


La formattazione approfondita impiega tanto tempo? Se si, non capisco perché non tocca i dati.
La relazione tanto tempo = toccare i dati non è molto chiara, forse ti stai chiedendo che cosa fa il programma in tutto questo tempo e magar si sospetta che se ne stia a giocare al solitario... :D
Come già scritto nelle guide, il programma controlla la congruenza, la struttura logica di tutto lo spazio contenuto nella partizione

havanalocobandicoot
18-03-2009, 23:55
Praticamente esistono due tipi di formattazione lenta: una con riscrittura di parte della MFT + controllo della superficie del disco (se così si può dire), e la "zero fill". Io la prima la ignoravo, credendo che Windows nella formattazione lenta facesse di fatto una "zero fill".
Se fossi stato io a dover decidere le modalità operative delle formattazioni lenta (ma senza zero fill) e veloce, avrei imposto alla formattazione veloce di cancellare solo il settore iniziale della MFT e a quella lenta di riscriverla tutta (che tanto non dovrebbe portar via troppo tempo). Critico quindi le due modalità: per me non ha senso che una formattazione lenta non cancelli neanche la MFT in maniera completa: a mio avviso quindi chi ha deciso ha scelto male.

Il controllo dello spazio della partizione effettuato dalla formattazione lenta (ma senza zero fill) è un controllo pur sempre fisico della superficie del disco oppure è un controllo logico degli indirizzi (per capirci, come sono "tagliati" i settori del disco)?

Prima pensavo che non avesse senso il discorso della cancellazione parziale della MFT perché ignoravo che la parte di MFT che non viene cancellata ha comunque tutti i "flag" impostati per non leggere i "record" della MFT stessa. Pensavo quindi che la nuova MFT occupasse tutto lo spazio occupato da quella vecchia (dando, tuttora, per presupposto che la MFT è come un database che cresce di dimensione "fisica" man mano che si aggiungono nuovi record). Anche perché, quando un disco è appena formatto lo spazio occupato risulta essere inferiore a quando il disco è stato prima riempito e poi svuotato... e quello spazio, se non è occupato dalla MFT, non saprei da che altro lo possa essere.
A pensarci bene, la MFT dovrebbe essere memorizzata sull'hard disk come un normale file, quindi di fatto al momento della formattazione (qualunque essa sia), quel file penso venga creato nuovamente (dato che come ho detto prima lo spazio occupato dopo una formattazione è "il minimo indispensabile"). Per me questa è un'incongruenza: se il file viene creato nuovamente non ha senso flaggare tutti i record della MFT come inattivi.

Se ho ben capito il discorso del recupero dati, si possono presentare due casi:
- indirizzo del file presente nella MFT (indipendentemente dal flag booleano), e quindi il file viene recuperato perfettamente;
- indirizzo non presente, e quindi non è presente neanche il nome.
E' così o può invece capitare anche che l'indirizzo sia presente nella MFT e il suo nome no? E' forse questo il caso in cui il record c'è ed il flag è disattivato? Penso al caso in cui i file recuperati sono nominati "con i caratteri strani".

havanalocobandicoot
19-03-2009, 00:31
Hai mai installato windows? Oppure hai mai formattato una partizione da Windows? ;)
Ho usato pochissime volte la formattazione di Windows (e comunque più che altro per floppy e pendrive, quasi mai per dischi rigidi).

Lo stesso senso che ha avere i dati sul disco, ma non essere indirizzati quindi non resi disponibili. Se i dati non ci sono o non sono indirizzati, il disco appare vuoto, se MFT è piena, ma non ha etichette leggibili, risulta vuota e nuovamente scrivibile ;)
Come ho detto sopra, non ne capivo il senso poiché pensavo che la nuova MFT occupasse tutto lo spazio occupato da quella vecchia.

La relazione tanto tempo = toccare i dati non è molto chiara, forse ti stai chiedendo che cosa fa il programma in tutto questo tempo e magar si sospetta che se ne stia a giocare al solitario... :D
Come già scritto nelle guide, il programma controlla la congruenza, la struttura logica di tutto lo spazio contenuto nella partizione
Essendo comunque una formattazione, davo per scontato che per tutto il tempo della stessa (o comunque per la maggior parte del tempo) il disco venisse scritto.
Mi sembra un paradosso che Windows riesca a controllare la congruenza della struttura logica della partizione, e le utility dei produttori no. :wtf:
La formattazione lenta (ma senza zero fill) non controlla eventuali settori danneggiati?