Pérdida de Datos: El Caso con Peor Panorama

ArticleCategory:

SystemAdministration

AuthorImage:[Ein Bild von Dir]

[Photo of the Author]

TranslationInfo:

original in de Detlef MÜller 

de to en Orla Shanaghy

en to es José Manuel González Calvar

AboutTheAuthor:

Me llaman 'Linux' en el café internet, aunque sólo he estado trabajando con el SO de Tux desde hace dos años ... quizás es el momento de conseguir un BSD también. ...
Sin trabajo actualmente, pero me gustaría verme envuelto en un proyecto de Linux. Para mi Linux es dos cosas, un sustituto del trabajo y un hobby.
Mi otro hobby es Attac, desde el principio de 2004. Me gustaría colaborar en la implementación de Linux de manera eficiente en esta área.
Mi primera página web ...
La visión: un sistema de e-democracia que permita a todos los participantes votar en internet - usando software libre, por supuesto.

Abstract:

Una de las mejores decisiones que he tomado sobre Linux ha sido la de sólo utilizar sistemas de archivos que soportasen journaling . Esta decisión ha sido confirmada justo ayer de una manera muy convincente. Un proceso de copia chapucero se comió todos los datos en la partición, incluidos todos los datos de un proyecto de Linux, y además hizo la partición imposible de montar.
Era un sistema de archivos con journal ReiserFS ...

Los sistemas de archivos con journaling son algunas de las ventajas que hacen que trabajar en Linux sea más seguro. Te aseguran contra quepuedas usar el botón reset - generalmente (!) sin que haya ningún efecto desastroso.
Este artículo sobre una pérdida de datos en la vida real nos muestra que esto puede, a veces tener efectos deprimentes, y describe los 'bits y bytes'del rescate heróico efectuado por una herramienta profesional y funcional de Linux llamada 'reiserfsck'.

ArticleIllustration:[Das Titelbild des Artikels]

Mounted nicht

ArticleBody:[The main part of the article]

Introducción de Linux

Tux ha estado en mi ordenador desde hace aproximadamente dos años - ahora tres pingüinos habitan en mi ordenador. Dos de la especie SuSE, una del género Debian, Knoppix por linea materna.

Todo empezó, con una ganga que conseguí en E-Bay. Había oído mucho sobre Linux, y quería llegar a ser un especialista, por eso esta fue mi manera de empezar.

Problemas de Novato ...

Definitivamente los primeros pasos no fueron fáciles. Con qué frecuencia terminé maldiciendo la superabundancia de nuevos términos técnicos - especialmente cuando éstos nunca son explicados (normalmente).
Cuando lees las primeras lineas del manual del distribuidor Alemán, te inundan con KDE, YaST, Bash, etc,... y además una revista de ordenadores con gran nombre, la ha descrito como la distribución con mejor documentación ... Ni caso - nada es simple o está claro.

(Suspiro) increíble...pero ocurre. Volvamos al punto principal.

ReiserFS en EISA 486

Este SuSE Linux 7.3 venía en un viejo 486 y todavía tenía un viejo bus EISA (...si, esas cosas todavía existen.) El primer hard reset (botón reset) y siguiente reinicio causaron problemas. No hubo más acceso al sistema de archivos, y sólo se montaba en modo read-only (sólo acceso de lectura).
"¿Qué se supone que quiere decir esto?"
Quiere decir un montón de trabajo. Los intentos de reparación fueron infructuosos....finalmente, simplemente reinstalé todo SuSE.
Todo esto me pasó 5 ó 6 veces. Cada vez que arrancaba con el sistema de recuperación de SuSE, usaba la herramienta de reparación e2fsck para sistemas de archivos ext2, y una vez también edité el archivo /etc/fstab con el miserable editor vi. El sistema estaba entonces OK...o quizás no. Finalmente, reinstalé Linux. En este momento, habían pasado un montón de días. Este asunto lleva tiempo a los novatos...

Entonces tuve la idea - inspirado por un artículo en c't - de instalar un sistema de archivos con journaling mediante YaST. Antes dije que lo hice, y desde entonces he estado esquivando el tema de cómo comencé a recuperar el sistema.
Si el sistema no se hubiera apagado de antemano, tendría un efectivo 'replayed nnn transactions in ...' mientras Linux se estuviera encendiendo, y el ordenador arrancaría correctamente.
"Aleluya!" pienso. Es mejor. Desde ahora, no más ext2 - ¡journaling es el camino a seguir desde aquí!


'Repetición del Journal' de una partición ReiserFS mientras el sistema arranca ... (del archivo de log) :


..... reiserfs: found format "3.6" with standard journal reiserfs: checking transaction log (sd(8,4)) for (sd(8,4)) reiserfs: replayed 109 transactions in 10 seconds reiserfs: using ordered data mode .....

Pruebas Críticas

Quería saber para asegurar.
Cuando ya me había familiarizado razonablemente con el JFs, realicé algunas pruebas críticas. El sistema de archivos fue sometido a un hard reset con el sistema completamente arrancado.

Arranqué KDE, con cantidad de programas, abrí archivos con el editor, entonces apreté el botó Reset. Las pruebas fueron satisfactorias. El sistema de archivos sobrevivió realmente sobrevivió.

El activar 'salida de emergencia' en un proceso de copia que está corriendo no causó problemas. El sistema SCSI 486 causó algunos problemas, aunque ReiserFS 'es lo que indica en el bote'. Siempre devuelve el sistema de archivos a un estado estado consistente y utilizable. Los archivos abiertos asimismo vuelven a su estado original.
las pruebas que reailcé más tarde bajo las mismas condiciones con ext3, la variedad de journal de ext2, fueron también satisfactorias.

Esto es lo que aparece en el log con ext3 durante el arranque del sistema:



..... Journalled Block Device driver loaded (recovery.c, 256): journal_recover: JBD: recovery, exit status 0, recovered transactions 450798 to 451415 (recovery.c, 258): journal_recover: JBD: Replayed 3756 and revoked 6/15 blocks kjournald starting. mit interval 5 seconds EXT3 FS 2.4-0.9.19, 19 August 2002 on sd(8,1), internal journal ext3_orphan_cleanup: deleting unreferenced inode 355953 ext3_orphan_cleanup: deleting unreferenced inode 355952 EXT3-fs: sd(8,1): 2 orphan inodes deleted EXT3-fs: recovery plete. EXT3-fs: mounted filesystem with ordered data mode. .....

Otros sistemas de archivo de journal

Esto ha sido el preámbulo ...
Desde entonces he venido utilizando ext3 y XFS.
He estado alejado de JFS, ya que se supone que no es totalmente seguro aun. No estoy diciendo nada negativo de él, simplemente no lo he probado todavía.

XFS ha desaparecido. No me importa; No he tenido problemas con él, pero no lo utilizo desde hace tiempo.
He seguido utilizando el sistema de archivos ext3. Está ahora en un 486 corriendo un Debian / inestable.
Simpre es posible pasar una partició con datos que tiene ext2 a ext3 - en un sistema encendido. Yo lo he probado - funciona!
He vuelto a utilizar ext3 de nuevo la última vez que instalé la versión de Knoppix en el disco duro.

La mayoría de los sistemas en mi PC de trabajo - sólo un PIII/500 - están en ReiserFS.


Cómo están divididos los dos discos de mi PC de trabajo:

QtParted
hda
Graphic 2, sda partitioning (SCSI disk)


QtParted
hda
Graphic 3, hda partitioning


D-day

Durante los pasados 3/4 de año he estado trabajando en un CD de documentación para Linux. Esto supone gran cantidad de datos: howtos, tutoriales, FAQs, más diferentes formatos y archivos en cada caso, y el mismo volumen de nuevo para actualizaciones. También estoy escribiendo archivos HTML adicionales, para que sea fácil echarle un vistazo rápido al CD-ROM.
Ha habido un montón de cosas que hacer las pasadas semanas. Se supone que una versión libre de este CD estará disponible pronto. Así - poner junto una imagen, escribir unos cuantos scripts para grabar en linea de comandos - es má rapido que utilizar un programa de KDE.
Y pongo todo en mi disco duro. Mi almacén de datos es /dev/hda5 en un disco de IDE de 60-Gb. La partición es de 20 Gigs (de los cuales sobre el 80% está lleno). Todos los bits y bytes importantes, supone cantidad de trabajo. Si le ocurriera algo alguna vez....oh, seguramente no es muy probable, después de todo no es Windows con FATxx .

He pensado muchas veces en hacer backups, pero hasta la fecha no he hecho nada. Tengo algunas copias en un disco duro separado y las voy dejando ahí.

Ayer por la tarde me fui del cafe Internet, donde descargué algunos paquetes de la web de SuSE. Era documentación original de SuSE desde la versi ón 7.3 hasta la 9.0 en dos CDs. Arranqué el PC en casa con SuSE 8.1. Normalmente utilizo Debian, pero los pquetes de SuSE eran RPMs, por eso usé la versión 8.1 esta vez. Y pude instalar el primer paquete de documentació de la 9.0. No es problema instalar un paquete más nuevo en la versión 8*. Entonces instalé los RPMs de la versión 9.0, los copié a la antes mencionada partició hda5, y desinstalé los RPMs. Hice los mismo con la 8.0.

Sin cerrar KDE, cambié a otra consola y presioné <CTRL ALT> <DEL> para apagar PC. Tuve un error en la linea de comandos - olvidé exactamente lo que era - todo lo que recuerdo es...que el PC se hizo el muerto. No podía hacer nada...
OK, entonces presioné el botón del Reset - No tendré miedo de hacerlo en Linux nunca más .

El peor panorama

Cuando arranqué Debian no noté nada al principio. Ya en KDE:
No estaba viendo directorios en mi partición de trabajo.
Pero si estaba a punto de reventar ... ?
Probablemente no se habráa montado(no, mierda - se monta automáticamente en el arranque).

Y entonces, después de un mensaje de error tras intentar 'mount /dev/hda5' - too many file systems - superbloque equivocado. Estaba temiendo lo peor...

Lo que estoy expermientando es un caso real de de pérdida de datos.

Y ahora? Erm ... quizás tratar de montarla de nuevo? De ninguna manera - si no se montó la primera vez, no va a montarse la segunda vez.
Pero lo intenté de todos modos ... nada! La partición que tenía meses de desarrollo, un montón de páginas HTML que había escrito, scripts para quemar CDs, recopilaciones de DEBs y RPMs de Internet, y montones de otras diversas cosas - todo se había ido, al Nirvana o donde quisiera que se fuera..
Por supuesto, algunos datos están todavía en el disco, pero podré acceder a ellos de nuevo?

Te reclinas, enciendes un cigarro ...
Lo primero que se me vino a la cabeza fue recuperación de datos. La partición es una ReiserFS. Hay un montón de herramientas para esto. Una vez leí algo en un artículo sobre Knoppix: Originalmente instalé Debian desde Knoppix. Las herramientas debería estar ahí.
Y ahí estaban.

reiserfsck en una operación de emergencia

Primero un vistazo por el directorio doc. Debe estar bajo /usr/share/doc/reiser-algo. Bajo Algo (...debería llamarse reiserfsprogs) encontré algunos archivos en inglés, uno por cada herramienta, extraidos de las páginas man.
Un vistazo rápido a las herramientas de recuperación de datos revela que reiserfsck debe ser el 'bisturí'. bien, empezamos...

Primero lo llamé sin cambiar nada. -hacer chequeos parece lo correcto al principio. Primero el diagnóstico, y luego la operación...

# reiserfsck -check

Konsole Bild 1
Bild 4, reiserfsck -check


No lo comprendo todo, pero comprendo que reiserfsck ha encontrado errores y dice que los puede arreglar. Suena bien.

Pensé sobre un minuto en el comienzo de la operación. Manejo el bisturí utilizando... ...

# reiserfsck --rebuild tree /dev/hda5

Console
graphic 2
Graphic 5, reiserfsck --rebuild-tree


Esto me pone nervioso. No pienso - Voy a recuperar lo que tendré que hacer en las próximas semanas.
"Estará restaurado el sistema ya?" ... Sí, debería.
Obtuve el viejo mensaje 'replaying journal'. Es el Buen Samaritano que hace la restauración posible - un tipo de tabla de contenidos para todas las subparticiones. Dos lineas más tarde, reiserfsck viene a través de un bit nulo incorrecto y... lo corrige.

Lo que viene Pass 0 de la restauración, visualmente separado en la consola. Este proceso toma cerca de 15 minutos para mis 20 GB...una pantalla de porcentaje se muestra al usuario para que eche un ojo al progreso.

El gráfico 2 muestra los detalles de un error. Qué quiere decir exactamente? Hmm ... pregúntame algo más. :)

Console graphic 3
Gráfico 6, Pass 0 up to 2, 3 (el principio sólo)


Está en ello ... Pass 1 es realmente rápido. No hay mensajes de error de datos.

Pass 2 es lo mismo.

En Pass 3 me desbordaron un montón de mensajes de error. Reconozco los archivos, son del proceso de copia de la documentación de SuSE. Esto demuestra que algo fue erróneo con este proceso de copia en particular. ¿Que sería, un bug en el Konqueror de KDE 3 o un bug en ReiserFS?

Console graphic 4
Graphic 7, Pass 3 (end)


De acuerdo a la descripción, se realiza una búsqueda en Pass 3a de archivos perdidos o directorios.

Console graphic 5
Gráfica 8, Pass 3a


La herramienta normalmente encuenra lo que está buscando, especificando el error, y corrigiendo las entradas relevantes, presentándolas con un 'corrected to ...' al final de la línea.
Entonces muestra un resumen de sus operaciones normales de rescate. En Pass 4, nos muestra un mensaje simple de que la sincronización (del journal en su estado actual en el disco duro) ha finalizado.

Console graphic 6
Graphic 9, Pass 4 and end


Ahora mis datos son accesible otra vez.
No tengo mensajes durante el montaje - un signo fiable de que un comando UNIX se ha ejecutado con éxito. :-))

Bien está lo que bien acaba?

Y el Konqueror me está mostrando mis viejos directorios en la partición hda5. Todo ha vuelto a su sitio de nuevo ... o debería decir, casi todo. Se han perdido algunos de los archivos copiados - lógicamente. No se puede esperar un resultado perfecto de un proceso fallido. Puedo volver a copiarlos.

Hoy, el día después, todavía no he chequeado mis datos en hda5. Pero es como si todo hubiera sido restaurado. La herramienta ha parecido muy profesional en uso crítico!

Son las 16:30 hrs del día D-Day+1. La campana de alarma sonó hace 18 horas. El artículo (éste) está próximo a finalizarse - esto es cómo fue una operación de emergencia con éxito.
Estoy contento de haber salvado el progreso de la 'consola' después de recuperarlo en un archivo ayer. Esto quiere decir que he podido incluir capturas de pantalla del 'accidente' original en este artículo.

P.D (2 días más tarde): no hay señal de ninguna pérdida de datos. Trabajo en la partición afectada todo el tiempo

Veredicto

Pérdida de datos pueden ocurrir en un sistema de archivos de journal, pero las oportunidades de recuperación completa son más altas. JFs son fiables y fáciles de mantener.
Un sistema de archivos de journal es un deber para cada usuario de Linux (perdonarán una opinión tan rotunda en el mundo del software libre).

La mayoría de las distribuciones ofrecen al usuario un sistema de archivos de journal o configuración predetarminada durante el procedimiento de instalación.

Y ... eso significa que a los que no les gustan los backups pueden disponer de sus datos sin necesidad de backup.
Sin embargo, esto no debería derivar en no realizar copias de seguridad.
Así que siempre haga backups!

Referencias

Artículos sobre sistemas de archivos de Journal:

mirror server hosted at Truenetwork, Russian Federation.