Cómo recuperar ZVOL y contenedores LXC de un array RAIDZ en Proxmox VE
En este artículo, examinaremos el proceso de recuperación de máquinas virtuales almacenadas como dispositivos de bloque ZVOL y contenedores LXC desde una matriz de software RAIDZ basada en el sistema de archivos ZFS, creada en Proxmox Virtual Environment versión 9.1.1.

- Cómo funciona ZFS en Proxmox
- Cómo conectar los discos del servidor a un ordenador
- Cómo recuperar datos de RAIDZ en Proxmox VE
- Conclusión
- Preguntas frecuentes
- Comentarios
Analizaremos los escenarios de pérdida de datos más comunes. Entre ellos se incluyen la eliminación accidental de archivos importantes dentro del sistema invitado o la eliminación errónea de la propia máquina virtual o del conjunto de datos del contenedor. También consideraremos la recuperación de datos en caso de problemas de hardware, como daños en la matriz causados por la falla de una unidad o por un fallo general del servidor. Asimismo, abordaremos fallos de software, por ejemplo, un bloqueo del hipervisor Proxmox VE provocado por actualizaciones fallidas, errores críticos o corrupción de la partición del sistema.
Mostraremos cómo retirar correctamente los discos de una matriz averiada, conectarlos directamente a un PC en funcionamiento, ensamblar automáticamente la matriz RAIDZ y recuperar los datos.
Nuestro software especializado permite recuperar datos de cualquier sistema de archivos invitado para Windows, Linux y macOS sin problemas.
Recuperación de máquinas virtuales creadas en Proxmox VE (*.RAW, .VMDK, .qcow2)
Cómo funciona ZFS en Proxmox
El sistema de archivos ZFS en un entorno Proxmox difiere fundamentalmente de soluciones tradicionales como Ext4. En lugar de crear un directorio estándar y colocar en él archivos de discos virtuales convencionales, ZFS se integra estrechamente con el hipervisor a nivel de administración del almacenamiento. Esto proporciona un alto rendimiento y fiabilidad, pero cambia por completo el enfoque del almacenamiento y la recuperación de datos.
- Para las máquinas virtuales completas, Proxmox no utiliza los conocidos archivos de imagen qcow2 o RAW. En su lugar, el sistema crea dispositivos de bloque dedicados especiales denominados ZVOL. El software de recuperación de datos no los ve como archivos independientes en una carpeta, sino como unidades físicas completas. Este enfoque permite que el hipervisor trabaje con mayor eficiencia con instantáneas y asignación de recursos del servidor.
- Para contenedores LXC ligeros, se utiliza un enfoque algo distinto. En lugar de crear discos virtuales, Proxmox implementa cada contenedor en su propio conjunto de datos ZFS aislado, conocido como subvolume. Al examinar la matriz, estos conjuntos de datos aparecerán como carpetas normales con una jerarquía estándar de directorios del sistema Linux en su interior, desde la cual los archivos necesarios pueden extraerse directamente.
| Característica | Máquinas virtuales (ZVOL) | Contenedores LXC (subvolume) |
|---|---|---|
| Método de almacenamiento | Dispositivos de bloques ZVOL dedicados | Conjuntos de datos ZFS independientes |
| Organización de los datos | Los datos se almacenan en un dispositivo de bloques que funciona como una unidad independiente | Los datos se organizan en un sistema de archivos con una jerarquía de directorios de Linux |
| Formato del disco virtual | No se utilizan archivos de imagen estándar qcow2 o RAW; en su lugar, se crean ZVOL | No se requiere un archivo de disco virtual independiente |
| Cómo aparecen durante la recuperación | Como un único dispositivo de bloques, similar a un disco físico | Como carpetas con archivos y subcarpetas |
| Acceso a los archivos | Es necesario analizar el contenido del dispositivo de bloques para determinar la estructura del sistema de archivos | Se puede examinar la estructura de directorios y extraer directamente los archivos necesarios |
| Particularidades del uso de ZFS | Gestión eficiente del almacenamiento en bloques y compatibilidad con instantáneas | Almacenamiento aislado del sistema de archivos de cada contenedor |
| Objeto principal de la recuperación | Discos virtuales y datos almacenados en ZVOL | Archivos, carpetas y datos de los contenedores LXC |
Cómo conectar los discos del servidor a un ordenador
Antes de iniciar la recuperación mediante software, debemos conectar correctamente los discos del servidor a un ordenador en funcionamiento. La opción más fiable es una conexión directa a través de los conectores SATA de la placa base.
Dado que trabajamos con unidades de servidor, es posible que utilicen la interfaz SAS. En ese caso, para leerlas en un ordenador estándar, debe instalarse un controlador SAS adecuado. También pueden utilizarse adaptadores USB externos o estaciones de acoplamiento, pero debe tenerse en cuenta que la velocidad de análisis de matrices grandes a través de USB será significativamente inferior.
Al conectar las unidades, es importante recordar el número mínimo de discos necesario para trabajar con matrices RAIDZ1. Dado que esta arquitectura de matriz reserva espacio para un bloque de paridad, el software puede reconstruir completamente los datos incluso si falta una unidad física.
En nuestro caso, el grupo original estaba compuesto por tres unidades. Por lo tanto, para extraer correctamente todos los datos, bastará con conectar solo dos unidades funcionales al ordenador.

Si no hay suficientes puertos disponibles, la solución óptima es crear imágenes virtuales de algunas de las unidades. Puede conectar directamente algunas unidades físicas y utilizar copias exactas bit a bit de las demás, montadas directamente en la interfaz de la utilidad.
El software reconoce dichas imágenes como dispositivos físicos completos y las utiliza automáticamente para reconstruir la estructura de la matriz. Este método garantiza la seguridad de los datos originales, ya que el análisis posterior se realiza sobre copias virtuales. Una vez que todos los componentes del grupo estén conectados físicamente o montados como imágenes, Hetman RAID Recovery leerá automáticamente los metadatos de ZFS y mostrará la matriz ensamblada en la ventana principal, proporcionando acceso al análisis posterior y al guardado de archivos.
Para crear una imagen, inicie Hetman RAID Recovery, seleccione la unidad necesaria de la lista y haga clic en Guardar disco.

En la ventana que aparece, especifique la ubicación donde se guardará el archivo.
Tenga en cuenta que el tamaño de la imagen será igual a la capacidad total de la unidad de origen, independientemente de cuánto espacio esté utilizado. Por lo tanto, asegúrese de antemano de que la unidad de destino disponga de suficiente espacio libre.
Después de guardar la imagen, vaya al menú principal y seleccione Montar disco.

En la lista de tipos, seleccione Imágenes de disco RAW y cargue su archivo.

Aparecerá en la lista de dispositivos junto con las unidades conectadas físicamente. Si hay varias unidades problemáticas, repita este procedimiento para cada una de ellas.
Una vez que todos los componentes del grupo estén conectados físicamente o montados como imágenes, Hetman RAID Recovery leerá automáticamente los metadatos de ZFS y mostrará la matriz ensamblada en la ventana principal, proporcionando acceso al análisis posterior y al guardado de archivos.

Cómo recuperar datos de RAIDZ en Proxmox VE
MÉTODO 1. Recuperación automática de datos
Después de conectar físicamente las unidades al ordenador, inicie Hetman RAID Recovery.
La utilidad comenzará automáticamente a analizar todos los dispositivos conectados y leerá los metadatos de servicio del sistema de archivos ZFS. Con base en estos datos, el programa reconstruirá de forma independiente la matriz RAIDZ dañada. Este proceso es totalmente automático y permite recuperar el acceso a los datos incluso después de un fallo fatal del hipervisor Proxmox o de una avería completa del hardware del servidor.

En la ventana principal verá todas las matrices detectadas. Seleccione su grupo ensamblado e inicie el modo Análisis rápido para realizar un análisis rápido de la estructura de almacenamiento.

Una vez finalizado el análisis, el sistema de archivos recuperado se mostrará en la ventana principal. Aquí es importante entender cómo el programa etiqueta los distintos tipos de entornos virtuales de Proxmox. Los dispositivos de bloque de las máquinas virtuales completas se mostrarán con el identificador vm y la palabra disk en el nombre, y se marcarán como volúmenes ZVOL. Los conjuntos de datos aislados de sus contenedores LXC se mostrarán en el programa como carpetas normales con la palabra subvol.

Para recuperar automáticamente los datos de un contenedor, solo necesita encontrar la carpeta con el número correspondiente de su LXC y abrirla.
Dado que los contenedores se almacenan como conjuntos de datos del sistema de archivos, dentro de esta carpeta verá la jerarquía estándar de directorios del sistema Linux. Puede navegar fácilmente entre directorios y buscar los archivos de usuario, bases de datos o configuraciones necesarios. Seleccione los objetos que desea guardar y haga clic en el botón Recuperación de la barra de herramientas.

En el siguiente paso, el programa le pedirá que especifique una ruta para guardar los archivos. Asegúrese de elegir una unidad independiente con suficiente espacio libre para evitar sobrescribir los datos originales de sus discos del servidor. Confirme el inicio del proceso de copia y la utilidad transferirá de forma segura los archivos seleccionados del contenedor a su unidad local.

Una vez completada la operación, todos los datos recuperados estarán completamente listos para su uso posterior sin necesidad de montarlos ni realizar otras acciones adicionales.
MÉTODO 2. Trabajo con máquinas virtuales (ZVOL)
La recuperación de datos de máquinas virtuales completas requiere un enfoque diferente. Dado que Proxmox no las almacena como archivos ordinarios, sino como dispositivos de bloque ZVOL dedicados, el programa trabajará con ellas según el mismo principio que con las unidades físicas. Para extraer datos del sistema operativo invitado, debemos exportar este dispositivo de bloque, montarlo y analizarlo.

Al analizar el grupo, busque el dispositivo de bloque ZVOL necesario y guárdelo en su ordenador mediante la función Recuperación.

La utilidad exporta este objeto en formato RAW. Este formato es una copia exacta, byte por byte, de los datos y no tiene una estructura interna compleja ni compresión. Como resultado, ofrece el máximo rendimiento y es el objeto más conveniente para los algoritmos de recuperación, que pueden analizarlo como un disco físico estándar.
El procedimiento para montar el archivo guardado es lo más sencillo posible. Abra la herramienta de montaje de discos en el menú superior del programa. A continuación, busque el campo para imágenes de disco estándar y seleccione la opción RAW. Después de eso, en la ventana de búsqueda, simplemente seleccione el archivo guardado de su máquina virtual. El programa lo montará inmediatamente y lo mostrará en la pantalla principal, dejando el disco virtual completamente preparado para el análisis final.

Después del montaje correcto, el objeto aparecerá en la lista de dispositivos como una unidad estándar, lista para un examen detallado de su contenido interno. La elección del modo de análisis depende de la naturaleza de la pérdida de datos. Si los archivos simplemente se eliminaron por error dentro del sistema invitado, bastará con utilizar Análisis rápido para mostrar rápidamente la jerarquía de directorios.
En casos más complejos, después de un formateo o un cambio en la estructura lógica de particiones, debe utilizarse Análisis completo para una búsqueda exhaustiva de los datos. Una vez finalizado el análisis, podrá ver los archivos encontrados, verificar su integridad en la ventana de vista previa y guardar los datos necesarios en un dispositivo de almacenamiento seguro.

MÉTODO 3. Recuperación después de eliminar una máquina virtual
La eliminación de una máquina virtual o un contenedor en Proxmox suele producirse debido a un error del administrador. En el sistema de archivos ZFS, esto provoca que el dispositivo de bloque ZVOL o el conjunto de datos subvolume desaparezcan de inmediato. Como no existe una papelera de reciclaje en el sistema, el espacio liberado queda disponible para nuevas escrituras inmediatamente. Sin embargo, sus datos siguen permaneciendo físicamente en los discos.
La regla principal en esta situación es detener el servidor inmediatamente y cesar cualquier escritura en la matriz para evitar la sobrescritura permanente de los datos.
Para recuperar los objetos perdidos, volveremos a utilizar Hetman RAID Recovery.
Seleccione su grupo reconstruido e inicie el modo de análisis profundo Análisis completo. Este proceso lleva más tiempo porque el programa trabaja directamente con sectores de disco, buscando cuidadosamente componentes fragmentados del sistema de archivos por sus firmas.

Una vez finalizado el análisis, los objetos encontrados se mostrarán en la ventana del programa.

Para encontrar rápidamente el ZVOL necesario o el conjunto de datos eliminado, resulta conveniente utilizar la función de búsqueda. Si está recuperando un contenedor LXC, busque carpetas llamadas subvol y revise su contenido.

En las máquinas virtuales completas, el principal punto de referencia será el tamaño del volumen ZVOL encontrado, especialmente si su nombre original ya no se conserva. Los archivos encontrados en contenedores pueden comprobarse de inmediato a través de la ventana de vista previa.
Los volúmenes ZVOL detectados solo necesitan montarse directamente en el programa para realizar un análisis adicional de su contenido.
Después de verificar la integridad de los datos, seleccione los elementos necesarios y haga clic en el botón Recuperación. Especifique la ruta a un dispositivo de almacenamiento seguro independiente con suficiente espacio libre y espere a que finalice el proceso de copia.

Conclusión
La recuperación de datos de una matriz RAIDZ en Proxmox VE tiene sus propias particularidades, ya que ZFS utiliza su propia estructura de almacenamiento y gestión de datos. Las máquinas virtuales en este entorno pueden utilizar ZVOL, que se presentan como dispositivos de bloque, mientras que los contenedores LXC se almacenan como conjuntos de datos ZFS independientes que contienen la estructura de archivos del contenedor.
En caso de daño o pérdida de acceso a RAIDZ, es importante no volver a crear la matriz, no formatear las unidades y no realizar operaciones que puedan sobrescribir los datos de servicio de ZFS. Para una recuperación satisfactoria, es necesario conservar la estructura original de la matriz y, siempre que sea posible, trabajar con copias de las unidades.
El software especializado de recuperación de datos permite analizar la estructura de ZFS, localizar discos virtuales ZVOL, sistemas de archivos y datos de contenedores LXC, incluso en situaciones en las que Proxmox VE o la propia matriz RAIDZ ya no proporcionan acceso normal a la información.
Así, el enfoque correcto de recuperación permite acceder tanto a los datos de las máquinas virtuales almacenadas en ZVOL como a los archivos y directorios de los contenedores LXC, conservando su estructura original. Esto es especialmente importante después de una falla de una unidad, corrupción del grupo ZFS, eliminación accidental de datos o errores críticos de Proxmox VE.







