Com recuperar un fitxer suprimit a Linux


Us va passar això mai? Us heu adonat que heu esborrat un fitxer per error, ja sigui mitjançant la tecla Supr o bé amb rm a la línia d'ordres.

En el primer cas, sempre podeu anar a la Paperera, cercar el fitxer i restaurar-lo a la seva ubicació original. Però què passa amb el segon cas? Com estic segur que probablement sabeu, la línia d'ordres de Linux no envia fitxers eliminats enlloc, sinó que els elimini. Bum. S'han anat.

En aquest article compartirem un consell que pot ser útil per evitar que això us passi, i una eina que podeu considerar utilitzar si en algun moment sou prou descuit per fer-ho de totes maneres.

Crea un àlies per a rm -i

El commutador -i, quan s'utilitza amb rm (i també amb altres eines de manipulació de fitxers com ara cp o mv) fa que aparegui un missatge abans d'eliminar un fitxer.

El mateix s'aplica a copiar, moure o canviar el nom d'un fitxer en una ubicació on ja n'hi ha un amb el mateix nom.

Aquesta indicació us ofereix una segona oportunitat per considerar si realment voleu eliminar el fitxer; si confirmeu la sol·licitud, desapareixerà. En aquest cas, ho sento, però aquest consell no us protegirà de la vostra pròpia negligència.

Per substituir rm amb un àlies a rm -i, feu:

alias rm='rm -i'

L'ordre d'àlies confirmarà que ara rm té un àlies:

Tanmateix, això només durarà durant la sessió actual de l'usuari a l'intèrpret d'ordres actual. Per fer el canvi permanent, l'haureu de desar a ~/.bashrc (algunes distribucions poden utilitzar ~/.profile) com es mostra a continuació:

Perquè els canvis a ~/.bashrc (o ~/.profile) tinguin efecte immediatament, obteniu el fitxer des del shell actual:

. ~/.bashrc

L'eina forense - En primer lloc

Amb sort, tingueu cura amb els vostres fitxers i només haureu d'utilitzar aquesta eina mentre recupereu un fitxer perdut d'un disc extern o una unitat USB.

Tanmateix, si us adoneu que heu eliminat accidentalment un fitxer del vostre sistema i us entrareu en pànic, no ho feu. Fem una ullada a principal, una eina forense dissenyada per a aquest tipus d'escenaris.

Per instal·lar principalment a CentOS/RHEL 7, primer haureu d'habilitar Repoforge:

# rpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm
# yum install foremost

Mentre que a Debian i derivats, només cal fer-ho

# aptitude install foremost

Un cop finalitzada la instal·lació, procedim amb una prova senzilla. Començarem eliminant un fitxer d'imatge anomenat nosdos.jpg del directori /boot/images:

# cd images
# rm nosdos.jpg

Per recuperar-lo, utilitzeu principal de la següent manera (primer haureu d'identificar la partició subjacent: /dev/sda1 és on resideix /boot en aquest cas):

# foremost -t jpg -i /dev/sda1 -o /home/gacanepa/rescued

on /home/gacanepa/rescued és un directori en un disc independent; tingueu en compte que recuperar fitxers a la mateixa unitat on es trobaven els eliminats no és un moviment prudent.

Si, durant la recuperació, ocupeu els mateixos sectors de disc on hi havia els fitxers eliminats, és possible que no es pugui recuperar res. A més, és fonamental aturar totes les vostres activitats abans de realitzar la recuperació.

Un cop s'hagi acabat d'executar foremost, el fitxer recuperat (si la recuperació era possible) es trobarà dins del directori /home/gacanepa/rescued/jpg.

En aquest article hem explicat com evitar l'eliminació accidental d'un fitxer i com intentar recuperar-lo si es produeix un esdeveniment no desitjat. Tingueu en compte, però, que, depenent de la mida de la partició, pot trigar força temps a executar-se.

Com sempre, no dubteu a fer-nos saber si teniu preguntes o comentaris. No dubteu a enviar-nos una nota mitjançant el formulari següent.