Contrassegna i file eliminati come non eliminati


11

La capacità del mio disco rigido è di 500 GiB. 150 GB di dati sono stati cancellati accidentalmente. Non ho scritto alcun byte sull'unità dopo quell'incidente, quindi i miei dati sono garantiti. Ho provato app come Recuva, tutte le app mostrano che i dati sono lì e mi permettono di salvarli in una posizione diversa, ma il problema è che non voglio farlo.

Voglio solo che i file vengano nuovamente contrassegnati come non eliminati nella MFT. C'è qualche app disponibile per questo scopo? Ho cercato molto ma non ho trovato nulla, è possibile deselezionare i file come eliminati nella MFT o mi sto perdendo qualcosa? Potrei scrivere un'app per questo se sapessi come farlo manualmente.


2
In realtà, ai vecchi tempi di DOS, undeletee ha unerasefatto esattamente questo, ma i programmi Windows tendono a copiare i file. Non credo di aver visto nessuno di quei file che hanno letteralmente cancellato. I didn't write any byte to the drive after that incident, so my data is guaranteed to be there.Forse, ma ciò non significa che siano recuperabili; qualsiasi file frammentato probabilmente ti consentirà di recuperare solo il primo blocco del file.
Synetech,

AFAIK, normalmente la voce per la cartella / file viene rimossa da MFT quando si elimina un file. Potrebbe non essere semplice come accendere o spegnere un po '.
Ganesh R.

@GaneshR. Questo è quello che voglio fare, voglio aggiungere di nuovo la voce nella MFT, non è possibile? I dati sono già presenti sul disco rigido, devono solo essere registrati nel filesystem.
Elmo,

Recuva mi mostra il nome del file e la cartella in cui era situato il file.
Elmo,

1
Potresti provare a richiedere agli sviluppatori di alcuni strumenti di recupero dati di aggiungere questa opzione. Ecco il forum di feedback per un paio dei più popolari: Recuva , Photorec
Synetech

Risposte:


5

La cancellazione di file su un volume NTFS non è semplice come capovolgere un bit. È vero che la differenza tra un file cancellato e non cancellato è solo un bit nella MFT, ma è necessario anche recuperare i contenuti del file, che sono archiviati come flussi, e contrassegnare nuovamente i settori eliminati come utilizzati in lo pseudo-file $ Bitmap che contiene un bit per settore, ogni bit indica se il cluster corrispondente viene utilizzato (allocato) o libero (disponibile per l'allocazione).

La complessità del lavoro è tale che tutti gli strumenti di recupero preferiscono non scrivere sul volume danneggiato. Ad esempio, contrassegnare un settore in $ Bitmap come usato può causare il concatenamento se quel settore era già utilizzato da un altro file.

Questo articolo ha dimostrato molto bene il problema con i dump esadecimali: serie
"File Recovery" di Windows: parte 5 Ripristino manuale di un file eliminato da un file system NTFS .

Un altro articolo contiene anche il codice sorgente di un programma che può essere modificato per sbloccare il bit "cancellato": Annulla l'eliminazione di un file in NTFS .

Esistono diversi editor di dischi NTFS che possono modificare MFT per capovolgere quel bit. Alcuni di quelli che ho trovato tramite Google (ma per fortuna non è mai stato necessario utilizzarli) sono:
WinHex
NTFS Data Recovery Toolkit
DMDE
Freeware Editor di dischi attivi

Una possibile soluzione che potrebbe anche funzionare sarebbe quella di annullare il bit cancellato nella MFT, quindi utilizzare l'utilità chkdsk per provare a recuperare il contenuto. Questa utility può recuperare le catene di settori di file i cui settori sono stati erroneamente contrassegnati come disponibili per la riallocazione e risolverà $ Bitmap.

Tuttavia, esiste sempre la possibilità che questa procedura possa distruggere il disco.

Questo è il motivo per cui tu e tutti i commentatori sopra (incluso me stesso) non avete trovato alcun prodotto che esegua il ripristino sul posto. Le possibilità di rovinare il disco sono semplicemente troppo per chiunque non sia un dipendente Microsoft che lavora su NTFS.

La mia migliore raccomandazione per te è quella di ottenere un secondo disco rigido e recuperare i file su di esso. Credo che tu abbia scoperto che un disco di backup non è sufficiente. Ho già avuto diversi casi di amici che mi chiedevano di ripristinare il loro unico backup e li consiglio sempre (a volte troppo tardi) di avere due dischi di backup.

Inoltre, almeno uno dei due dischi di backup deve essere disconnesso dal computer. Lo consiglio dopo aver sentito di un caso in cui un computer ha frantumato se stesso e tutti i dispositivi USB collegati, lasciando il proprietario senza dati e senza backup in un colpo solo.


2

Come ho detto ieri , potresti sempre provare a farlo manualmente con un editor hex / disk se ci sono solo pochi file da recuperare, ma sicuramente non lo consiglierei.

Dopo diversi minuti di ricerca e test, alla fine sono riuscito a contrassegnare un file come non cancellato in $MFT, ma il problema è che non è abbastanza, devi anche contrassegnare i cluster che utilizza in uso in $BITMAP. Questo compito si è rivelato troppo difficile e troppo lavoro per trovare e farlo, alla fine ho rinunciato. Ho pensato di correre chkdsk /fper vedere se avrebbe rilevato la discrepanza e contrassegnato correttamente i cluster, ma mi è sembrato troppo rischioso perché la partizione NTFS su cui ho provato aveva alcuni altri file che non volevo perdere.

(Si noti inoltre che, mentre a differenza FAT *, NTFS memorizza la catena di cluster per un file nella $MFT, che non garantisce che si avrà accesso a tutta la catena di cluster, al momento del recupero, quindi un file frammentato potrebbe finire per essere irrecuperabile Anche se non hai scritto nulla sull'unità dopo la cancellazione accidentale, ciò non significa che Windows non lo abbia fatto. Ad esempio, potrebbe averlo scritto \System Volume Information, specialmente se il servizio Copia shadow / Versioni precedenti è in esecuzione.)

Ovviamente il ripristino manuale non è in realtà una soluzione, né una risposta alla tua domanda, motivo per cui l'ho pubblicato solo come commento. Purtroppo, tutta la ricerca che ho fatto è diventata vuota e la risposta breve alla tua domanda è: no, non ci sono programmi pubblici che possono semplicemente contrassegnare un file come non cancellato su un volume NTFS .

(Esistono programmi costosi — costosi — che possono fare cose fantasiose con le unità e recuperare file e presentare dati grezzi attraverso un filtro per mostrare strutture e simili, ma anche quelli non saranno di aiuto perché specificatamente fanno un punto di non modifica dell'unità originale.)

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.