it-swarm.it

Ripristino di file cancellati accidentalmente

Ho cancellato accidentalmente un file dal mio laptop. Sto usando Fedora. È possibile recuperare il file?

82
crskhr

Vorrei sconsigliare di installare immediatamente qualche utilità. Fondamentalmente il tuo più grande nemico qui sono le scritture su disco. Vuoi evitarli a tutti i costi in questo momento.

La tua scommessa migliore è un backup automatico creato dal tuo editor - se esiste. Altrimenti, proverei il seguente trucco usando grep se ricordi una stringa univoca nel tuo file .tex:

$Sudo grep -i -a -B100 -A100 'string' /dev/sda1 > file.txt

Sostituisci /dev/sda1 con il dispositivo su cui si trovava il file e sostituisci 'string' con la stringa univoca nel tuo file. Questo potrebbe richiedere del tempo. Ma fondamentalmente, ciò che fa è cercare la stringa sul dispositivo e quindi restituisce 100 righe prima e dopo quella linea e la inserisce in file.txt. Se hai bisogno di più righe restituite, regola -B e -A opzioni appropriate. Potresti restituire un sacco di rifiuti extra, ma dovresti riuscire a recuperare il testo.

In bocca al lupo.

95
Steven D

È possibile, sarà solo una seccatura.

AGGIORNAMENTO: prima di provare questo metodo, dai un'occhiata a Steven's risposta .

Avrai bisogno del pacchetto testdisk , molto spazio su disco e un lotto di tempo.

PhotoRec, una parte di TestDisk, può recuperare file da quasi tutti i dischi. PhotoRec fa supporto trova .tex File.


Innanzitutto, installa testdisk eseguendo

yum install testdisk

nota: avrai bisogno di molto spazio libero su un'altra unità, dove puoi salvare i file recuperati.

Ripristina tutti i file eliminati sul disco eseguendo photorec sullo spazio libero del disco.

Sudo photorec

e segui le istruzioni ... (ricorda di non salvare i file sullo stesso disco da cui stai recuperando)

Al termine del processo, tutti i file recuperati devono trovarsi in una directory, dove è necessario eseguire:

find -name '*.tex' > filelist

Verrà visualizzato un elenco di file che potrebbe essere quello che hai perso. Dovrai controllarli tutti, poiché i nomi dei file andranno persi.

23
Stefan

Molti editor di testo mantengono i file di backup. Se sei davvero fortunato, potrebbe esserci qualcosa come yourfile.tex ~ inclusa una versione precedente del tuo file.

13
fschmitt

Esistono altri strumenti di recupero dati e i più efficaci sono soprattutto , photorec , bisturi e salvataggio magico . (Suppongo che il trucco 'grep' abbia detto qui non è abbastanza) Qui puoi trovare alcuni tutorial su come usarli:

http://www.howtogeek.com/howto/15761/recover-data-like-a-forensics-expert-using-an-ubuntu-live-cd/

https://help.ubuntu.com/community/DataRecovery

9
Attilio

In ogni caso smetterei di lavorare sul dispositivo in uso il più presto possibile per evitare qualsiasi scrittura sul disco, e avviare un sistema operativo di recupero dedicato, come SystemRescueCd , che è un Live-CD in modo da poter montare il disco in sola lettura per evitare ulteriori perdite di dati.

Queste distro includono molti strumenti di recupero menzionati da altri e puoi installarne la maggior parte mancante.

Tendo sempre ad avere un CD con una versione recente di SystemRescueCd nel mio lettore USB esterno, per ogni evenienza.

4
Martin C.

NOTA: Ho aggiunto questa risposta per quanto riguarda qualche altra domanda sui file di database eliminati (server MySQL) che è stata chiusa e ha indicato questo. Credo che possa essere utile anche in altre situazioni simili (per quanto alcuni processi mantengano ancora aperti i descrittori di file).

Se il tuo processo è ancora in esecuzione, puoi trovare i tuoi file in /proc/<pid>fd/ e copiali. Invia SIGSTOP prima al gruppo di processi. Copia i file. Crea una nuova istanza sul lato e mantieni ferma questa o kill -9 e rimetti i file al loro posto. InnoDB si ripristinerà da solo quando eseguito, ma se c'era un po 'di MyISAM di quello che dovresti fare manualmente.

3
pawel7318

Ho accidentalmente cancellato il mio file db sqlite.

Quello che ho fatto per scoprire il file è stato,

Ha aperto la posizione /proc/ in un browser di file e ha cercato il file db sqlite eliminato lì.

Ho scoperto quel file in un risultato di ricerca. Ho copiato quel file da lì al mio vecchio posto.

2
Thaha kp

Ho avuto lo stesso problema due anni fa e ho provato molti programmi, come debugfs, photorec, ext3grep ed extundelete. ext3grep era il miglior programma per recuperare file. La sintassi è molto semplice:

ext3grep image.img --restore-all

o:

ext3grep /dev/sda3 --restore-all --after date -d '2015-01-01 00:00:00' '+%s' --before `date -d ‘2015-01-02 00:00:00’ ‘+%s’

Questo video è un mini tutorial che può aiutarti.

0
Juan

Se non si dispone di alcun backup, uno strumento di ripristino del disco di terze parti potrebbe ripristinare alcuni o tutti i dati, ma è necessario interrompere l'utilizzo della macchina ora. I file nel cestino sono ora disponibili per il tuo sistema per sovrascriverli. Una volta sovrascritti, è proibitivo recuperare i dati. Ho avuto successo usando uflysoft data recovery (ci sono altre applicazioni di recupero dati per Mac OS) - devi avere una "unità di recupero" (non la tua unità principale o quella da cui stai effettuando una ricerca) su cui salvare i dati recuperati. Si avvia dal disco di recupero dati (sistema)

0
Gallup Noel