Restauración automática en Linux con Partclone

restauracion_linux_portada

En este artículo vamos a ver la forma de instalar una distribución Linux junto con un sistema de restauración automática basados en el uso de la herramienta Partclone, el mismo tiene la habilidad de auto regenerarse, es decir, que ante un eventual problema con el sistema operativo será posible recuperar en pocos minutos la configuración original y volver al estado base de nuestro Linux.

Partclone es un software diseñado para realizar backups (respaldos) y restauración de particiones fue escrito en lenguaje C y es un proyecto open source liberado bajo licencia GNU GPL. Por sus características Partclone es parte esencial de nuestra solución de restauración automática como ya habrán podido deducir.

Si bien pueden existir otras formas de implementar este sistema de restauración, la solución que describiremos ha resultado ser muy efectiva por su facilidad de implementación, rapidez de restauración y la versatilidad en el clonado de un gran número de computadoras donde fue implementada.

Implementando el sistema de restauración

En principio explicaremos de forma general el funcionamiento de la solución y luego detallaremos los aspectos más técnicos de nuestro sistema de restauración.

Lo primero que debemos hacer es instalar la distribución Linux de nuestra preferencia, teniendo en cuenta que debemos realizar algunas particiones mínimas para que todo el sistema funcione correctamente. Luego, debemos instalar un segundo sistema Linux, este tendrá instalada la herramienta Partclone, que será la encargada de clonar y restaurar las particiones. Finalmente, creamos la imagen de la partición donde se encuentra nuestro sistema principal y la respaldamos en otra partición, de esa forma será posible restaurarla posteriormente.

Paso a paso

1. Instalar la distribución Linux preferida y crear las particiones de la siguiente manera:
(suponiendo que el disco fue detectado como sda)

particiones linux

2. Realizamos las configuraciones según la preferencia de cada uno, cuando creemos que todo está como corresponde reiniciamos el equipo y comenzamos a instalar el segundo sistema operativo en la partición sda2 que dejamos libre anteriormente.

3. Recomendamos usar alguna versión mínima de Ubuntu, Debian o similar, ya que ocupan muy poco espacio en disco, además Partclone está disponible para descargar en distintos formatos (por ejemplo .deb); esto no quita que se pueda instalar otro sistema operativo ya que en el sitio web del proyecto se encuentran disponibles los fuentes para instalarlos a mano.

4. Descargamos el .deb del sitio de Partclone y lo instalamos, dependiendo de la distribución elegida puede ser necesario descargar algunas dependencias.

5. Para crear la imagen usaremos el comando

partclone.ext4 -c -d -s /dev/sda1 -o /home/usuario/imagen.img

6. Para restaurar el sistema usando la imagen creada previamente ejecutamos el comando

partclone.ext4 -r -d -s /home/usuario/imagen.img /dev/sda1

Consideraciones del sistema de restauración

Como solo se restaura el sistema operativo de sda1 los datos del usuario no se tocan, ya que estos se encuentran en sda4, eso permite recuperar el sistema tantas veces como sea necesario sin correr el riesgo de perder información.

Suponemos que el sistema de archivos que elegimos para nuestra instalación es ext4.

El gestor de arranque activo se debe encontrar en el segundo sistema instalado y se puede modificar para que muestre un menú que haga referencia a la tarea, por ejemplo «Linux» y «Restaurar».

menu restauracion

Se puede automatizar el proceso, por ejemplo haciendo un script que luego sea reemplazado por el shell del usuario, esto hará que cuando el mismo inicie sesión el único proceso que se va a ejecutar es la restauración del sistema.

Automatizando el sistema de restauración

Suponiendo que el gestor de arranque o booteo que dejamos instalado (en la segunda partición) es GRUB2 debemos realizar algunas tareas para automatizar el proceso de restauración:

  • Modificar el menú de booteo, debemos editar el archivo /boot/grub/grub.cfg y cambiamos las entradas «menuentry» para que refleje lo que queremos. Un ejemplo sería cambiar el texto «Ubuntu 32-bit, 3.0.0-19-generic» por «Restaurar» así podemos identificar mejor las opciones, tal como se ve en la imagen anterior.
  • Crear un script (ej. script_restauracion) que restaure o clone el sistema (debe contener el comando visto previamente), le damos permisos de ejecución y lo ponemos en /usr/bin . Luego,  modificamos el archivo /etc/passwd y para un usuario específico sustituimos: /bin/bash por /usr/bin/script_restauracion. Esto hará que el usuario solo pueda ejecutar el script de restauración al iniciar sesión; con esto restringimos la restauración o clonación a un usuario específico.

Comentarios finales

Cabe destacar que este procedimiento fue implementado en entornos de producción con cientos de equipos en funcionamiento, y los resultados fueron muy satisfactorios.

Debemos decir también que, las particiones que se definieron en este artículo son las mínimas recomendadas, pero obviamente es posible crear otras según las necesidades de cada caso.

Si tienes alguna duda o consulta sobre el sistema de restauración que presentamos puedes escribirnos en los comentarios y con gusto te responderemos.

Mas información:

Partclone.org

Créditos de fotografía: Matt McGee via photo pin cc
Modificada por Tecnopedia.net

4 thoughts on “Restauración automática en Linux con Partclone

  1. Hola!
    Soy novato y logré hacer un restauración automática desde el menu de burg con clonezilla.
    Tengo instalado el linux mint y me gustaria agregar la restauración como tu lo indicas pero no entendí bien como ejecutar el script… podrías detallarmelo.
    Desde ya, muchas gracias.

  2. Hola Juan: Querría agradecerte ante todo esta valiosa información que nos brindas. Acabo de llegar a Linux e instalé el sistema siguendo algunas recomendaciones que encontré, reservando particiones primarias para /boot, swap y extendidas para / y para /home y con esta distribución que me he montado, no se como llevar a cabo tu sistema recovery. ¿Te importaría indicarme?

    Gracias de antemano.

    Saludos, Miguel Angel

Comments are closed.