Recuperación de datos en ZFS: una guía sobre RAIDZ1, RAIDZ2, RAIDZ3 y Stripe

En este artículo revisamos los procedimientos para la recuperación de datos de arreglos RAIDZ1, RAIDZ2, RAIDZ3 y Stripe de ZFS creados en el sistema operativo TrueNAS SCALE. Mostramos la secuencia de acciones en caso de fallo de hardware del servidor y la metodología para restaurar el acceso al pool de datos cuando uno o más discos fallan o los datos son eliminados accidentalmente del arreglo.

Recuperación de datos en ZFS: una guía sobre RAIDZ1, RAIDZ2, RAIDZ3 y Stripe

Además de fallos de hardware, abordamos la recuperación tras la eliminación de un dataset completo, corrupción del pool, fallo crítico del sistema operativo, daños en el sistema de archivos ZFS, errores al añadir nuevos discos, comportamiento incorrecto del controlador e inicialización accidental de discos en otro sistema.

La recuperación de datos se realiza en Linux Ubuntu, pero también es posible en entornos Windows y macOS.

Ir a ver
Recuperación de datos de las matrices RAID SHR-2 y SHR-1 creadas en el NAS Synology DS418play

Recuperación de datos de las matrices RAID SHR-2 y SHR-1 creadas en el NAS Synology DS418play

Capacidades de TrueNAS SCALE

TrueNAS es un sistema operativo abierto para construir almacenamiento en red, basado en Linux y usando el sistema de archivos ZFS. Proporciona protección de datos, verificación de integridad, gestión eficiente de discos y soporte para la ejecución de máquinas virtuales.

La plataforma soporta varios tipos de RAID, incluyendo RAIDZ, que combina rendimiento y tolerancia a fallos. TrueNAS SCALE permite escalado horizontal combinando múltiples nodos en un clúster manteniendo las características clave de ZFS: autorreparación, snapshots, compresión, deduplicación y cifrado.

TrueNAS SCALE

El sistema es compatible con los protocolos SMB, NFS, iSCSI y S3 y además permite ejecutar contenedores y Kubernetes, lo que lo convierte en una solución versátil para el almacenamiento y procesamiento de datos en distintos entornos.

RAIDZ es un arreglo de discos redundante en ZFS con paridad distribuida. El uso de bloques de longitud variable optimiza las escrituras y permite la corrección automática de errores durante las lecturas.

Al recuperar un arreglo degradado (reconstrucción o resilvering), la carga sobre los discos restantes aumenta significativamente. Por ello, RAIDZ es más adecuado para entornos con requerimientos moderados de tolerancia a fallos o para discos de menor capacidad donde el tiempo de reconstrucción es reducido.

Categoría Capacidades
Tipo de sistema NAS / servidor de código abierto basado en Linux
Sistema de archivos Soporte ZFS
RAID RAIDZ1, RAIDZ2, RAIDZ3, Stripe, Mirror
Escalado Horizontal (Scale-out)
Virtualización Soporte KVM (máquinas virtuales)
Contenedores Kubernetes, Docker (a través de Apps)
Protocolos de red SMB, NFS, FTP, iSCSI
Gestión Interfaz web (GUI)
Seguridad Cifrado de datos, control de acceso, ACL
Copia de seguridad Snapshots, replicación, Rsync
Servicios en la nube Integración con AWS, Google Cloud, Azure
Monitorización Alertas, registros, estadísticas
Complementos / Apps Extensibilidad mediante catálogo de aplicaciones
Alta disponibilidad Soporte de clúster (HA)
Soporte GPU Sí (para contenedores y VMs)

Método 1. Recuperación automática de arreglos ZFS

En caso de fallo de componentes de hardware del servidor (fuente de alimentación, placa base o controlador de disco), el acceso directo a los datos desde el sistema operativo se vuelve imposible.

Estas situaciones también se presentan cuando el servidor no arranca debido a un error crítico durante una actualización de TrueNAS SCALE o cuando la partición del sistema está dañada.

Aun cuando los archivos y discos no estén físicamente dañados, se puede perder el acceso a un arreglo RAIDZ y las herramientas estándar de ZFS pueden no detectar los discos ni permitir la importación del pool. En estos casos, software especializado, como Hetman RAID Recovery, permite un acceso seguro a los datos y la recuperación de la información.

Recuperación de datos de matrices RAID dañadas inaccesibles a una computadora.

En este ejemplo demostramos el proceso de recuperación automatizada en un equipo con Ubuntu.

Apague primero el servidor y retire con cuidado todos los discos que formaban parte del arreglo.

Apague el servidor y retire con cuidado todos los discos

Conéctelos a una estación de trabajo: la opción óptima es directamente a la placa base mediante cables SATA para máxima velocidad y estabilidad en la transferencia de datos. Si la placa carece de puertos libres, se pueden usar estaciones de acoplamiento USB externas o adaptadores USB-a-disco.

Conecte los discos del servidor a una estación de trabajo

Tenga en cuenta que al conectarlos mediante estaciones de acoplamiento la velocidad de escaneo puede ser menor, por lo que para volúmenes grandes de datos es preferible usar puertos internos.

Tras la conexión, verifique que los discos aparezcan en Ubuntu en la utilidad Discos, pero no los inicialice si el sistema solicita esta acción.

Los discos aparecen en la utilidad Discos de Ubuntu

Inmediatamente después de la verificación, inicie Hetman RAID Recovery para realizar el ensamblado automático del arreglo.

La característica clave de Hetman RAID Recovery es el análisis profundo de los metadatos de ZFS. El software no requiere un sistema operativo o controlador funcional: lee la información de servicio directamente de los discos y reconstruye automáticamente la estructura del pool.

Dado que ZFS almacena todos los datos críticos de configuración del arreglo dentro del propio pool, la integridad lógica de los archivos se conserva incluso si el entorno del servidor está completamente inaccesible. Como resultado, el usuario obtiene acceso a los datos en una forma familiar sin dependencia del sistema original.

Este artículo demuestra varias configuraciones de arreglo:

  • RAIDZ1 en tres discos,
  • RAIDZ2 en cuatro,
  • RAIDZ3 en cinco,
  • y Stripe en dos discos.
Tabla: diversas configuraciones RAIDZ

Examinaremos el algoritmo de recuperación en detalle para un RAIDZ1 de tres discos en una situación de fallo completo de hardware del servidor o un error crítico tras actualizar TrueNAS SCALE.

Es importante señalar que este enfoque es universal y también puede aplicarse a configuraciones RAIDZ2, RAIDZ3 y Stripe.

Al iniciar Hetman RAID Recovery, escanea automáticamente todos los dispositivos conectados. El programa lee los metadatos de servicio de ZFS, analiza la configuración de los grupos vdev virtuales y, basándose en los datos obtenidos, reconstruye el modelo correcto de RAIDZ1.

La ventana de trabajo muestra los discos detectados y las estructuras lógicas ensambladas — puede continuar inmediatamente con su análisis: realizar un análisis detallado, ver la estructura de datos o recuperar los archivos necesarios.

Hetman RAID Recovery: discos detectados y estructuras lógicas ensambladas

Seleccione el RAIDZ1 requerido de la lista de arreglos reconstruidos e inicie el modo de Escaneo rápido para determinar rápidamente la estructura de datos.

Hetman RAID Recovery: seleccione el RAIDZ1 reconstruido de la lista

Al finalizar el escaneo, el sistema de archivos recuperado con la jerarquía completa de directorios y archivos se mostrará en la ventana principal. Seleccione los objetos requeridos y haga clic en Recuperar.

Hetman RAID Recovery: sistema de archivos recuperado con jerarquía completa

En el siguiente paso, especifique una carpeta para guardar los datos — preferiblemente en un medio separado con espacio libre suficiente.

Hetman RAID Recovery: opciones disponibles para guardar los datos recuperados

Confirme el inicio del proceso, especifique la ruta de destino final y haga clic en Recuperar nuevamente para comenzar la copia. Tras completar la operación, haga clic en Finalizar.

Como resultado, los datos del pool ZFS RAIDZ1 serán recuperados y estarán disponibles para su uso normal.

Hetman RAID Recovery: datos recuperados del pool ZFS RAIDZ1

Método 2. Recuperación de RAIDZ con discos faltantes

Ahora consideremos el caso de la falla de uno o varios discos en un arreglo RAIDZ.

La arquitectura RAIDZ proporciona tolerancia a fallos según el tipo de arreglo:

  • RAIDZ1 tolera la pérdida de un disco.
  • RAIDZ2 tolera la pérdida de dos discos.
  • RAIDZ3 tolera la pérdida de tres discos.

En el caso de Stripe no existe redundancia, por lo que la falla de cualquier disco conduce a la pérdida completa de datos.

Tabla: arquitectura RAIDZ

Si no es posible conectar todos los discos, puede crear una imagen del disco faltante y utilizarla junto con los demás discos para la recuperación posterior.

Gracias a los mecanismos de paridad distribuida y verificaciones de integridad de datos, software especializado como Hetman RAID Recovery puede reconstruir bloques perdidos y restaurar el acceso a la información si el número de discos fallados no supera el nivel permisible para el tipo de RAIDZ específico.

Recuperación de datos de matrices RAID dañadas inaccesibles a una computadora.

Si se supera ese umbral, la estructura lógica del arreglo queda dañada y los métodos de software estándar se vuelven ineficaces. En tales situaciones, la recuperación solo es posible utilizando equipos profesionales en laboratorios especializados.

Asegúrese de que el medio de destino tenga suficiente espacio libre para almacenar los datos recuperados y retire con cuidado los discos del servidor, conectándolos a un ordenador vía puertos SATA o una estación de acoplamiento externa. Es importante evitar cualquier escritura en estos discos, ya que esto podría causar pérdida irreversible de datos.

Conexión de los discos del servidor a un ordenador mediante estación de acoplamiento externa

Antes de comenzar, cierre todas las aplicaciones que puedan utilizar estos discos y desactive temporalmente las copias de seguridad o sincronizaciones automáticas. Si el sistema no monta el arreglo, no inicialice los discos, ni cree particiones ni los formatee.

Déjelos en su estado actual y proceda directamente al procedimiento de recuperación. Seguir estas recomendaciones aumenta significativamente las posibilidades de una recuperación segura y exitosa, independientemente del tipo de RAIDZ o de la configuración Stripe.

Si la arquitectura de su estación de trabajo no permite conectar todos los discos simultáneamente, la solución óptima es usar imágenes de disco virtuales. Este método implica crear copias bit a bit de cada disco para su posterior análisis.

Tras montar la imagen del disco faltante, Hetman RAID Recovery la tratará como un dispositivo físico completo y, combinado con los discos disponibles, reconstruirá automáticamente la estructura del arreglo. Este enfoque permite iniciar la recuperación de datos incluso cuando los puertos de conexión son insuficientes — preservando la seguridad y la integridad de los datos en cada etapa.

Revisaremos el proceso de recuperación usando RAIDZ3 como ejemplo, en el que tres discos fallaron simultáneamente.

Esta configuración de arreglo permite la posibilidad de recuperar datos incluso en una falla tan severa — realizaremos esto con Hetman RAID Recovery.

Inmediatamente al abrir, el software escanea automáticamente todos los discos conectados, lee la información de servicio y, con base en ello, reconstruye la estructura original del arreglo. La ventana de trabajo muestra todos los discos físicos detectados y las configuraciones virtuales formadas, que pueden usarse de forma inmediata. Seleccione el RAIDZ3 encontrado y active el Escaneo rápido.

Hetman RAID Recovery: pool ZFS

Tan pronto como finalice la comprobación, la ventana de trabajo mostrará la estructura completa del arreglo reconstruido con todos los directorios y archivos.

Hetman RAID Recovery: pool ZFS después del escaneo

Marque los elementos requeridos y haga clic en Recuperar. Luego especifique la carpeta para guardar y confirme la operación haciendo clic de nuevo en Recuperar.

Hetman RAID Recovery: análisis del pool ZFS

Cuando la copia finalice — haga clic en Finalizar.

Tras completar todos los pasos, los archivos recuperados del arreglo RAIDZ3 serán totalmente utilizables en operaciones normales.

Datos recuperados del pool ZFS

Método 3. Recuperación de archivos eliminados

Finalmente, consideramos uno de los escenarios más comunes — la eliminación accidental de archivos de un arreglo RAID.

En este ejemplo recuperamos datos de un Stripe creado con dos discos bajo el sistema de archivos ZFS.

La característica de Stripe es que los datos se distribuyen entre todos los discos sin redundancia. Esto significa que ningún disco contiene archivos completos por sí solo. Para una recuperación exitosa todos los discos deben estar conectados simultáneamente y ser tratados como una única estructura lógica. Si falta uno de los discos o no está conectado, el software no podrá leer los datos.

Estructura del pool ZFS

Antes de comenzar, asegúrese de que todos los discos estén conectados físicamente al equipo — directamente por SATA a la placa base o utilizando una estación de acoplamiento externa.

Es importante no escribir nuevos datos en estos discos ni inicializarlos en el sistema para evitar sobrescribir los archivos perdidos.

Ubuntu: utilidad Discos

En Ubuntu inicie Hetman RAID Recovery.

Recuperación de datos de matrices RAID dañadas inaccesibles a una computadora.

El software escaneará automáticamente todos los discos conectados, leerá los metadatos de ZFS y reconstruirá la estructura lógica de Stripe en consecuencia. En la ventana principal verá los discos físicos y el arreglo ensamblado listo para operar.

Hetman RAID Recovery: pool ZFS

A continuación, seleccione el Stripe de la lista de arreglos detectados e inicie un Escaneo completo. Se requiere un escaneo completo porque tras la eliminación de archivos en ZFS solo un análisis profundo permite ensamblar datos fragmentados y restaurar la estructura correcta de carpetas.

Hetman RAID Recovery: análisis completo del pool ZFS

Normalmente no se requieren ajustes adicionales; simplemente haga clic en Siguiente y espere a que finalice el proceso. Tras completar el escaneo, la ventana principal mostrará la estructura recuperada del arreglo con todas las carpetas y archivos. Si es necesario, utilice la vista previa para comprobar el contenido de documentos, imágenes u otros archivos.

Seleccione los archivos y carpetas requeridos y haga clic en Recuperar.

Hetman RAID Recovery: recuperación de datos del pool ZFS

Especifique el destino para los datos recuperados en un medio separado con espacio libre suficiente y confirme el inicio del proceso haciendo clic nuevamente en Recuperar.

Tras completar la copia haga clic en Finalizar.

Hetman RAID Recovery: recuperación de datos del pool ZFS completada

Como resultado, todos los archivos serán recuperados y estarán disponibles para su uso normal.

Este proceso garantiza la seguridad de los datos, permite la restauración de archivos incluso tras una eliminación accidental y preserva la estructura del sistema de archivos ZFS sin arriesgar daños en otros datos presentes en los discos.

Conclusión

La recuperación de datos del sistema de archivos ZFS y de arreglos RAIDZ1, RAIDZ2, RAIDZ3 y Stripe es compleja pero totalmente factible con el enfoque correcto y comprendiendo la arquitectura de estas soluciones. Gracias a los mecanismos integrados de integridad de datos y verificación de errores, ZFS proporciona un alto nivel de protección, especialmente en configuraciones RAIDZ2 y RAIDZ3.

No obstante, incluso sistemas tan fiables no están exentos de pérdida de datos por fallos de hardware, errores de usuario o corrupción crítica del pool. La configuración menos protegida sigue siendo Stripe, donde la ausencia de redundancia implica pérdida total de datos si cualquier disco falla.

El éxito de la recuperación depende de muchos factores: tipo de RAID, número de discos fallados, estado del sistema de archivos y rapidez en la actuación. Las recomendaciones clave son detener inmediatamente las escrituras en el arreglo afectado, realizar un diagnóstico correcto y emplear software especializado o servicios profesionales.

Por tanto, para minimizar el riesgo de pérdida de datos es importante no solo saber cómo recuperar datos, sino también implementar estrategias de copia de seguridad con antelación y elegir el nivel de RAID adecuado según la criticidad de la información.

Raidel Arbelay Becerra

Autor: , Escritor técnico

Raidel Arbelay Becerra es un escritor técnico de Hetman Software y la voz y la cara del canal de YouTube de Hetman Software: Recuperación de datos. Escribe artículos, tutoriales y reseñas en profundidad sobre el funcionamiento del software de la empresa con todo tipo de dispositivos de almacenamiento.

Angel Villares

Editor: , Escritor técnico

Ángel Villares es autor y uno de los ingenieros informáticos de Hetman Software. Cuenta con casi 10 años de experiencia en el campo de la informática: administración y configuración de servidores, instalación de sistemas operativos y de diferentes programas informáticos, configuración de redes, seguridad de la información, implantación y asesoramiento en el uso de software especializado. Es un experto en el campo de la recuperación de datos, sistemas de archivos, dispositivos de almacenamiento y matrices RAID.

Recomendado para ti