Está en la página 1de 3

Recuperar archivos borrados en Linux Hay veces en las que borramos archivos accidentalmente.

Normalmente tenemos la papelera de reciclaje como red de proteccin para no perder definitivamente esos archivos, pero a veces borramos con shift+supr o desde consola (rm -f ....) y de esa forma los ficheros no van a la papelera. Qu hacemos en este caso? Lo primero es conservar la calma, hay muchas posibilidades de que recuperemos dichos archivos o al menos gran parte de ellos. Cuanto antes debemos dejar de utilizar la particin en la que hemos eliminado los archivos. Cualquier escritura posterior a la eliminacin de esos archivos podra escribir donde antes estaban nuestros archivos, lo que nos impedira recuperarlos. Si es la particin raz, tendremos que apagar y posteriormente arrancar con un livecd o montar nuestro disco desde otro ordenador. Si es otra particin, como por ejemplo la /home, nicamente tendremos que desmontarla. Para poder desmontar la particin primero tenemos que dejar de utilizarla. En el caso de la /home, implica para las X Windows (gdm,kdm,... segn el caso) . Para ello pulsamos ctrl+alt+F1 y entramos en una consola como root. Despus escribimos, /etc/init.d/gdm stop umount /home Ahora es cuando realmente empieza la tarea de recuperacin. Tenemos diversas opciones como extundelete, magicrescue, foremost,... Mi consejo es que primero lo intentes con extundelete, ya que recupera incluso el sistema de directorios borrado. Si extundelete no nos recupera los ficheros deseados, habra que meterse en un anlisis en profundidad del disco con magicrescue y/o foremost.

extundelete Esta opcin slo te vale si tu sistema de ficheros es ext3 o ext4. Una vez descargado, descomprimimos el tar.bz2 tar -xjvf extundelete-0.2.0.tar.bz2 Para instalarlo necesitars tener instalado los paquetes e2fslibs-dev y build-essential. Si necesitas instalarlos, puedes usar el siguiente comando (en Debian y Ubuntu): aptitude install e2fslibs-dev build-essential A continuacin hay que compilar e instalar extundelete. Para ello: cd extundelete-0.2.0 ./configure make Ahora puedes ejecutar el comando extundelete que se ha generado en el directorio src src/extundelete --help Si quieres instalarlo para poder ejecutarlo como cualquier otro comando del sistema, es decir, escribiendo extundelete desde cualquier directorio, debers ejecutar make install aunque no es necesario. Puedes usar la opcin --restore-file si tienes claro el fichero que has perdido, pero si son varios ficheros o es un directorio, creo que lo ms cmodo es ejecutar lo siguiente: src/extundelete /dev/sda2 --restore-all donde /dev/sda2 es la particin donde se encuentran los ficheros eliminados. Los ficheros recuperados se guardan en un directorio dentro del directorio actual llamado RECOVERED_FILES. Tan slo tienes que entrar en ese directorio y ver si tus ficheros perdidos se encuentran entre los recuperados.

magicrescue Este programa escanea byte a byte la particin deseada en busca de patrones de ficheros o, como dicen en su pgina, bytes mgicos. Los patrones o recetas son ficheros que estn en un directorio, tpicamente en /usr/share/magicrescue/recipes/ y son los siguientes: avi canon-cr2 elf flac gimp-xcf gpl gzip jpeg-exif jpeg-jfif mp3-id3v1 mp3-id3v2 msoffice nikon-raw perl png ppm zip

De esta forma, podemos indicarle al programa que busque slo ciertos tipos de ficheros. magicrescue lo podemos encontrar en los repositorios de muchas distribuciones linux. Por ejemplo, para instalarlo en Debian o Ubuntu basta ejecutar lo siguiente: aptitude install magicrescue Para lanzar una bsqueda debemos ejecutar: magicrescue -d DESTINO_FICHEROS_RECUPERADOS -r /usr/share/magicrescue/recipes/RECETA DISPOSITIVO Por ejemplo, si hemos perdido nuestras fotos de algn viaje, podemos indicarle la receta jpeg-exif, que es el formato en que suelen guardar las fotos las cmaras digitales: magicrescue -d /root/recuperados -r /usr/share/magicrescue/recipes/jpeg-exif /dev/sda2 Tambin podemos indicarle varias recetas repitiendo el parmetro -r, o indicarle todas las recetas disponibles si en lugar de un fichero de recetas concreto indicamos el directorio de recetas. Este programa no recupera los directorios ni nombres de fichero originales, por lo que una vez ejecutada la instruccin de recuperacin, tendremos que buscar nuestros ficheros en el directorio donde hemos almacenado los ficheros recuperados. foremost Es similar a magicrescue, pero trae recetas diferentes. Podemos descargarlo de su pgina oficial, pero al igual que magicrescue, podemos encontrarlo en los repositorios de muchas distribuciones linux. Por ejemplo, para instalarlo en Debian o Ubuntu: aptitude install foremost La sintaxis es similar a magicrescue aunque en lugar de trabajar con recetas, trabaja con tipos de archivos. Las opciones son: jpg gif png bmp avi exe mpg wav

riff wmv mov pdf ole doc zip rar htm cpp

foremost -o DESTINO_FICHEROS_RECUPERADOS -t TIPOS_SEPARADOS_POR_COMA -i DISPOSITIVO Por ejemplo, si queremos buscar imgenes jpg y png: foremost -o /root/recuperados -t jpg,png -i /dev/sda2 Al igual que magicrescue tampoco recupera directorios ni nombres de ficheros. No volver a ocurrir Por supuesto, llegados a este punto ya nos habremos repetido mil veces que esto no me puede volver a ocurrir, que tengo que hacer ms copias,... A continuacin expongo una serie de buenas prcticas que nos pueden ayudar a evitar este tipo de desastres: Forzar a que los comandos peligrosos como rm, mv y cp pidan confirmacin. Para ello tenemos que aadir en el .bashrc de los usuarios que utilicemos lo siguiente:

alias rm='rm -i' alias cp='cp -i' alias mv='mv -i' Nunca hacer borrados del tipo rm -rf * : normalmente esto lo hacemos para vaciar el contenido de un directorio y para ello previamente hemos hecho un cd DIRECTORIO , pero hay veces que o bien el ese cd no lo hemos hecho adecuadamente o simplemente no lo hemos hecho y con las prisas borramos lo que no deberamos. Una alternativa a ese rm peligroso es hacer el borrado desde un directorio superior o con rutas absolutas, de forma que el wildcard no sea tan generico. Por ejemplo: rm -rf DIRECTORIO/* Y no menos importante, pensar dos veces antes de pulsar Intro en los comandos peligrosos.

Y por supuesto, tener backups ms o menos actualizados de nuestra informacin sensible por si las buenas prcticas anteriores no han evitado el desastre. Espero que este post te haya sido de utilidad y que, si has borrado accidentalmente algn fichero importante, ahora puedas respirar tranquilo.

También podría gustarte