20 jul 2010

Copias de seguridad en EXT4

Una vez actualizado el sistema de EXT3 a EXT4 me encuentro que tengo que hacer cambios a mi sistema de copias de seguridad. Hasta el momento venía utilizando partimage para hacer la copia de seguridad de mi sistema operativo; pero este no soporta de momento el sistema de ficheros EXT4. Partimage realiza una imagen completa de una partición siendo una de sus mayores ventajas que no copia los bloques vacíos redundando así en una mayor velocidad de copia y menor espacio utilizado para la imagen resultante.

Después de sopesar varias alternativas me decidí por partclone muy similar en su funcionamiento a partimage y con soporte para particiones en EXT4. Aunque partclone tiene un sistema de menús basados Ncurses que facilita su utilización, si vamos a hacer nuestras copias de seguridad periódicamente lo conveniente es preparar un pequeño script con todos los pasos a realizar.


Los pasos a seguir serían los siguientes:

  1. Iniciar desde una partición diferente a la que queremos hacer un backup, normalmente una livecd, pues si copiamos un sistema en uso podríamos tener inconsistencias en los ficheros escritos durante la ejecución del SO.
  2. Instalar partclone en el equipo, para ello tenemos varias opciones pero la más cómoda es agregar los respositorios a nuestro sistema y después instalar partclone mediante apt-get ejecutando como root:
    echo "#Repositorios partclone
    deb http://free.nchc.org.tw/drbl-core drbl stable
    deb-src http://free.nchc.org.tw/drbl-core drbl stable" >> /etc/apt/sources.list

    apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 40009511D7E8DF3A

    apt-get update

    apt-get install partclone
  3. Conectar y montar el medio donde guardaremos el backup, lo ideal seria usar un disco duro externo, llave de memoria usb o un sistema remoto.
  4. Realizar el backup de nuestro sistema mediante partclone. Aunque partclone no soporta compresión de las imágenes es muy sencillo hacer esto utilizando pipes y gzip: partclone.ext4 -c -s /dev/disk/by-uuid/nuestro_uuid -d | gzip -c9 > /destino/backup.img.gz. Es muy aconsejable indicar la partición usando su UUID pues nos evitamos problemas con el cambio de rutas al conectar diferente hardware. Para obtener el UUID de una partición podemos usar blkid (ejemplo: blkid /dev/sda1).

Siguiendo estos pasos tendríamos lista una copia completa de nuestro sistema y en caso de cualquier problema podríamos restaurar nuestro sistema completamente con una orden como la siguiente zcat backup.img.gz | partclone.ext4 -r -o /dev/disk/by-uuid/nuestro_uuid.

Relacionado: Buenas prácticas garantizando la disponibilidad de un sistema en Security By Default

No hay comentarios: