Recuperando Ficheros Borrados Con Un Poco De Suerte, Lsof Y /Proc

Posteado: 20/03/2009 |Comentarios: 1 | Vistas: 153 |

¿Alguna vez habeis borrado un fichero por equivocacion desde consola, cuando estabais trabajando con el? Supongo que habeis echado mil maldiciones por la equivocacion y el tiempo perdido cuando esto os ha pasado.

Primero vamos a ver un poco como podemos acceder a la informacion o estatus de un fichero. Para esto podemos utilizar el programa de sistema stat. Veamos como funciona:

Primero creamos un fichero de texto:

user@test# echo "ESTO ES UN FICHERO DE TEXTO DE PRUEBAS" > fichero_pruebas.txt

A continuacion podemos usar stat para obtener la informacion de este fichero:

user@test# stat fichero_pruebas.txt
File: `fichero_pruebas.txt'
Size: 39 Blocks: 8 IO Block: 4096 regular file
Device: 301h/769d Inode: 512495 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 1000/ user) Gid: ( 1000/ user)
Access: 2008-02-04 22:28:57.000000000 +0100
Modify: 2008-02-04 22:28:57.000000000 +0100
Change: 2008-02-04 22:28:57.000000000 +0100

Alguna de esta informacion tambien la podriamos haber obtenido usando el comando ls:

user@test# ls -li fichero_pruebas.txt
512495 -rw-r--r-- 1 root root 39 2008-02-04 22:28 fichero_pruebas.txt

De toda esta informacion, la que nos interesa en este articulo es la denominada Inode. Segun Wikipedia, un inodo (inode en ingles) se puede definir como:

"... una estructura de datos propia de los sistemas de archivos tradicionalmente empleados en los sistemas operativos tipo UNIX como es el caso de Linux. Un inodo contiene las características (permisos, fechas, ubicación, pero NO el nombre) de un archivo regular, directorio, o cualquier otro objeto que pueda contener el sistema de ficheros.

El término "inodo" refiere generalmente a inodos en discos (dispositivos en modo bloque) que almacenan archivos regulares, directorios, y enlaces simbólicos. El concepto es particularmente importante para la recuperación de los sistemas de archivos dañados.


Cada inodo queda identificado por un número entero, único dentro del sistema de ficheros, y los directorios recogen una lista de parejas formadas por un número de inodo y nombre identificativo que permite acceder al archivo en cuestión: cada archivo tiene un único inodo, pero puede tener más de un nombre en distintos o incluso en el mismo directorio para facilitar su localización."

En nuestro caso el inodo de nuestro fichero es 512495, este es el identificador de nuestro fichero en el sistema. Cuando borramos un fichero con el comando rm, lo que hacemos es borrar la referencia al inodo en cuestion, durante un tiempo dicho inodo seguira existiendo en nuestro sistema aunque no podamos verlo y parezca que el fichero borrado ha desaparecido de nuestro sistema.

Si algun programa esta accediendo el fichero que hemos borrado, estamos de suerte. El programa en cuestion tendra una referencia al inode del fichero borrado y siempre que no cerremos este programa podremos recuperar el contenido de dicho fichero. (Un caso practico que a muchos nos a pasado alguna vez es el borrar el fichero log de algun servicio del sistema (apache, postgresql, mysql. etc) mientras que el servicio esta funcionando)

A continuacion presentamos una session completa desde que borramos un fichero hasta que lo recuperamos:

Abrimos nuestro fichero ejemplo con less (por ejemplo)

user@test# less fichero_pruebas.txt

ESTO ES UN FICHERO DE TEXTO DE PRUEBAS
fichero_pruebas.txt (END)

Pulsamos Ctrl+z para suspender el programa less sin pararlo (el programa seguira abierto, accediendo nuestro fichero, pero suspendido)

user@test# less fichero_pruebas.txt

[1]+ Stopped less fichero_pruebas.txt

Comprobamos que nuestro fichero sigue intacto:

user@test# ls -li fichero_pruebas.txt
512495 -rw-r--r-- 1 root root 39 2008-02-04 22:28 fichero_pruebas.txt

Lo borramos ... accidentalmente ;-)

user@test# rm ficheros_de prueba.txt

Comprobamos que no existe en nuestro directorio

user@test# ls -li fichero_pruebas.txt
ls: fichero_pruebas.txt: No such file or directory

Como hemos comentado mas arriba, si tenemos un programa accediendo el fichero estamos de suerte. Utilizamos lsof para ver si algun programa esta accediendo el fichero que hemos borrado:

user@test# lsof |grep fichero_pruebas.txt
less 28410 user 4r REG 3,1 39 512495 /home/user/fichero_pruebas.txt (deleted)

No deberia de ser una sorpresa que nuestro programa less este accediendo nuestro fichero borrado. Las columnas que nos interesan de esta linea son la primera (PID del programa accediendo el fichero, 28410), y la cuarta, el 'file descriptor' (4r) con la referencia al inodo de nuestro fichero (512495).

Con esta informacion nos vamos al sistema de ficheros virtual /proc con informacion de nuestro sistema linux.

user@test# ls -l /proc/28410/fd/4
lr-x------ 1 user user 64 2008-02-04 22:38 /proc/28410/fd/4 -> /home/user/fichero_pruebas.txt (deleted)

Como era de esperar, una referencia al fichero borrado. Lo unico que tenemos que hacer ahora es copiar los datos a los que /proc/28410/fd/4 esta haciendo referencia. Para esto podemos utilizar simplemente el comando cp

user@test# cp /proc/28410/fd/4 fichero_pruebas.txt.restaurado

Ahora no importa que nuestro programa less termine de ejecutarse, porque nuestro fichero borrado ya esta recuperado.

user@test# cat fichero_pruebas.txt.restaurado
ESTO ES UN FICHERO DE TEXTO DE PRUEBAS

En este articulo hay que tener un poco de suerte para no perder nuestro fichero, pero en futuros articulos veremos otras tecnicas a usar cuando la suerte no esta de nuestro lado. Esto es todo por hoy, que lo disfruteis.

Hacer una pregunta

200 Caracteres que restan
Pregunta
Puntear artículo
  • 1
  • 2
  • 3
  • 4
  • 5
  • 0 voto(s)
    Comentar
    Imprimir
    Re-Publicar
    Fuente del Artículo: http://www.articuloz.com/recuperacion-de-datos-articulos/recuperando-ficheros-borrados-con-un-poco-de-suerte-lsof-y-proc-826115.html

    Tags del Artículo:

    systema

    ,

    sistema

    ,

    ficheros

    ,

    borrados

    Hay dos formas principales en que un disco duro muere o se bloquea, si se quiere. Una de ellas es por un software, por lo general un sistema operativo mal instalado, la corrupción de archivos. El otro es un fallo físico. De los dos, un accidente de software es preferible.

    por: Reparacion Pcl Tecnología> Recuperación De Datosl 15/05/2012 lVistas: 12

    Los factores que influyen en el cálculo del servicio para recuperar archivos borrados en términos empresariales pueden ser altamente variables.

    por: datarecoveryl Tecnología> Recuperación De Datosl 27/04/2012 lVistas: 14

    Existen razones en común por las que se generan discos duros dañados, a pesar de la tecnología con la que contamos hoy en día no existe una herramienta que erradique o prevenga al 100% los daños que se pueden tener en una computadora para evitar la recuperar información de disco duro dañado.

    por: datarecoveryl Tecnología> Recuperación De Datosl 27/04/2012 lVistas: 14

    Recuperar discos duros es una labor de profesionales en recuperar archivos borrados. Tome sus precauciones y consulte a los expertos en recuperar información

    por: datarecoveryl Tecnología> Recuperación De Datosl 26/04/2012

    Cuando un sistema de almacenamiento es recibido en empresas para recuperar datos lo primero que se hace es una evaluación para determinar qué solución se le brindará para la reparación de disco duro

    por: datarecoveryl Tecnología> Recuperación De Datosl 25/04/2012 lVistas: 11

    La primera recomendación en este sentido es saber que acudir con empresas especializadas en reparación de disco duro es la opción que probablemente le traerá mejores resultados, ya que cuentan con experiencia en el tema de recuperación de archivos, así como con las herramientas e instalaciones necesarias para realizar el procedimiento.

    por: datarecoveryl Tecnología> Recuperación De Datosl 19/04/2012 lVistas: 16

    Si desgraciadamente no cuenta con un respaldo de información deberá solicitar los servicios de empresas para recuperar datos. Cuando se está bajo presión las opciones y soluciones no aparecen en nuestra mente, le aconsejamos mantener un plan de emergencia en caso de perder su información, debe contar con una solución para recuperar información de disco duro dañado.

    por: datarecoveryl Tecnología> Recuperación De Datosl 04/04/2012 lVistas: 18
    Seo Colombia

    El mercado está repleto de una amplia variedad de memorias USB, algunos de ellas son excelentes mientras que otros son completamente inservibles a la hora de guardar datos en los mismos. Si usted está considerando la compra de memorias USB personalizadas con un propósito promocional, una buena calidad es esencial a la hora de realzar su imagen de marca.

    por: Seo Colombial Tecnología> Recuperación De Datosl 01/09/2011 lVistas: 109

    El navegador Internet Explorer 7 y sus versiones anteriores incluyen decenas de errores relacionados con CSS. La mayoría de esos errores se pueden solucionar con trucos y técnicas que aprovechan otros errores o características del navegador. Además, muchos errores se solucionan gracias a la propiedad hasLayout de Internet Explorer.

    por: yusdiell Tecnología> Programaciónl 10/04/2009 lVistas: 908

    Con el transcurso del tiempo la conducta, el propósito y la actitud de un ser humano se modifican según el momento histórico en el que viva. Su entorno no está exento a estos cambios, es decir a medida que evoluciona el hombre, lo hace con él la sociedad y esto se ve marcado en sus diferentes esferas, creando otras expectativas de vida y así como nuevas necesidades a cubrir. El desarrollo de una sociedad se representa a través del crecimiento, progreso y adelanto de todo aquello que la conforma

    por: yusdiell Internet> Alojamiento Webl 30/03/2009 lVistas: 9,436 lComentarios: 2

    En este segundo artículo de la serie vamos a hablar de como configurar PostgreSQL para sacarle el mayor provecho a esta base de datos en su version 8.2.x. Como enseñamos en nuestro anterior artículo, PostgreSQL se puede empezar a utilizar sin necesidad de configurar, nada mas terminar de instalarlo y despues de inicializar nuestro "cluster". Pero si vamos a utilizar PostgreSQL para algo importante y con cierto volumen de datos y usuarios es imprescindible que lo configuremos para dicho trabajo.

    por: yusdiell Tecnología> Softwarel 20/03/2009 lVistas: 1,030

    Este articulo trata sobre como se desplanzan los usuarios en linux esta muy completo tanto para usuarios avanzados como usuarios novatos

    por: yusdiell Tecnología> Softwarel 20/03/2009 lVistas: 253

    un articulo de como en los ultimso tiempos se ha ha venido evolucionando las nuevas tecnologias y la integracion de estas con la publicidad

    por: yusdiell Internet> Marketing En Internetl 18/03/2009 lVistas: 226

    Las tecnologías son un conjunto de habilidades que permiten construir objetos y máquinas para adaptar el medio y satisfacer nuestras necesidades en general. Históricamente han sido usadas con diversos fines, entre ellas resalta el procesamiento de la información por medios artificiales o tecnología informática

    por: yusdiell Internet> Marketing En Internetl 18/03/2009 lVistas: 525

    Agregue un nuevo comentario


    Comments on this article

    0
    como se puede encontrar un password olvidado 12/10/2009
    A veces me ha sucedido que no he podido recordar mi passwor y no puedo accesar tengo entendido que hay formas de recuperarlo sin tener que realizar una nueva cuenta. Si es asi por favor y esta accesible en enseñarlo esperare su informacion. Gracias
    Box del Autor
    Categorías
    Todas las Categorias
    Quantcast