Acceder

¿Cómo realizar un respaldo / backup en VPS con Rsync?

Conoce cómo realizar un backup en tu VPS Linux mediante Rsync y SSH


Rsync es hoy la herramienta más potente para realizar respaldos y sincronizaciones hacia otro servidor de manera segura y libre en Linux. Es una aplicación que trabaja de forma remota y que te ayuda a transferir archivos eficazmente. Hoy en día se encuentra para sistemas de tipo Unix y Microsoft Windows.

Las características principales de Rsync son:
* Copiar enlaces (accesos directos), dispositivos, propietarios, grupos y permisos.
* No requiere privilegios sudo
* Las transferencias de datos son mediante pipelines para minimizar costos de latencias.

Al utilizar rsync en linux, podrás transferir y sincronizar tanto archivos como directorios entre un servidor remoto hacia otro servidor (externo o tu mismo pc).

Instalación de Rsync

En Debian y Ubuntu
apt-get install rsync


En CentOS
yum install rsync


Método de transferencia externa


Rsync puede transferir mediante SSH, en cuyo caso el servidor destinatario también debe contar con Rsync. Como todas las aplicaciones con años de desarrollo hay muchos maneras de cómo utilizarlo Rsync en Wikipedia. Personalmente me ha sido muy útil la siguiente:

Caso 1

Si deseas transferir una carpeta exclusivamente hacia otro servidor mediante SSH:
rsync -vPa -e 'ssh -o StrictHostKeyChecking=no' /var/www/154.14.123.1:/var/www/


Al añadir el parámetro StrictHostKeyChecking en la conexión SSH permitiremos la introducción del fingerprint al fichero .known_hosts de forma automática.

En este caso, estaremos transfiriendo el contenido de nuestra carpeta /var/www/hacia la carpeta /var/www/contenida dentro del servidor ubicado en la IP 154.14.123.1. Al ejecutar esa instrucción, si ambos servidores permiten conexiones SSH, solicitará la contraseña del servidor de destino y comenzará progresivamente la copia de datos.

Caso 2

Si deseas transferir un VPS hacia otro VPS. Idealmente ambos deben comprender la misma distribución de Linux, pero experimentando un poco no es tan necesario bajo la condición de excluir carpetas y archivos críticos del funcionamiento del VPS:

Deberías crear un archivo de texto con las rutas a excluir en la migración de datos:
/boot
/dev
/tmp
/sys
/proc
/backup
/etc/fstab
/etc/mtab
/etc/mdadm.conf
/etc/sysconfig/network*


Puedes nombrarlo excludes.txt

Posteriormente, al igual que en el caso 1, llamaremos la misma instrucción pero con un parámetro adicional (--exclude-from)

rsync -vPa -e 'ssh -o StrictHostKeyChecking=no' --exclude-from=/excludes.txt /154.14.123.1:/


Conclusión

Rsync es una herramienta muy potente para la migración de datos de forma segura. Es muy importante que ambos servidores (remoto y externo) cuenten con rsync para poder realizar esta ejecución.

En nuestra experiencia con VPS ha sido muy satisfactorio el trabajo con esta herramienta, permitiéndonos realizar grandes migraciones de datos con muy poco esfuerzo. Tiene más de cien opciones o listas de parámetros que te invitamos a descubrir y experimentar.