Copias de seguridad automáicas con rsync

Después del problema con el disco duro, me he montado un pequeño sistema de copias de seguridad a otra máquina con rsync utilizando ssh. El apunte en la web es más que nada para tenerlo a mano. Si a alguien le es til, pues perfecto, pero aviso que esto no es nada nuevo ni ingenioso. Puedes encontrar muchas formas de hacer lo mismo (y quizá mejor) buscando en Google.com :)

Vamos a suponer la existencia de datos.com como ordenador con los datos reales y de copias.com como equipo donde se conservarán las copias.

Como vamos a utilizar ssh para enviar los archivos de una máquina a otra, lo primero que hay que hacer es crear las claves pblicas y colocarlas en las máquinas necesarias para que no nos pida login al acceder.

Creamos la clave pblica rsa:

david@copias.com:~$ ssh-keygen -t rsa

Copiamos la clave a la máquina datos.com

david@copias.com:~$ scp id_rsa.pub david@datos.com:/home/david/.ssh/

En la máquina copias.com, creamos el archivo authorized_keys dentro del directorio oculto de ssh del usuario utilizado.

david@datos.com:~$ cat id_rsa.pub >> /home/david/.ssh/authorized_keys

Ahora ya podemos hacer el primer rsync para comprobar.

david@copias.com:~$ rsync -avz -e ssh david@datos.com:/home/david/ /home/david/backup/

Luego, podemos crear un pequeño script para correrlo en el cron con tanta frecuencia como necesitemos.
Yo he utilizado uno que ha creado Xisco, modificandolo un poco.

david@copias.com:~$ cat /opt/scripts/copia-rsync.sh
#!/bin/bash
echo
echo «Inici de la copia de » $1
echo «========================================»
date
echo «Copiant arxius…»
rsync -avz -e ssh david@datos.com:/home/david/ /home/david/backup/
echo
du -h /home/david/
echo
echo «Arxius copiats»
echo
echo «Espai lliure:»
df -h
echo
date
echo «Fi de la copia.»
david@copias.com:~$

Y en el cron del ususario david poniendo esto.

david@copias.com:~$ crontab -l
14 0 * * 2 root /opt/scripts/copia-rsync.sh dilluns | mailx -s «Copias.com: Copia diaria (dilluns)» david@datos.com
14 0 * * 3 root /opt/scripts/copia-rsync.sh dimarts | mailx -s «Copias.com: Copia diaria (dimarts)» david@datos.com
14 0 * * 4 root /opt/scripts/copia-rsync.sh dimecres | mailx -s «Copias.com: Copia diaria (dimecres)» david@datos.com
14 0 * * 5 root /opt/scripts/copia-rsync.sh dijous | mailx -s «Copias.com: Copia diaria (dijous)» david@datos.com
14 0 * * 6 root /opt/scripts/copia-rsync.sh divenres | mailx -s «Copias.com: Copia diaria (divenres)» david@datos.com
14 0 * * 0 root /opt/scripts/copia-rsync.sh dissabte | mailx -s «Copias.com: Copia diaria (dissabte)» david@datos.com
14 0 * * 1 root /opt/scripts/copia-rsync.sh diumenge | mailx -s «Copias.com: Copia diaria (diumenge)» david@datos.com
david@copias.com:~$

Publicado por

Suki_

CEO en Damavis Studio, proyectos I+D y BigData. Jugando con bits y software libre desde hace ya demasiado tiempo...

4 comentarios en «Copias de seguridad automáicas con rsync»

  1. A mi tambien me interesaria mucho saber como poder copiar todo el directorio raiz y hacer para que cuando el servidor principal se «caiga» el secundario lo sustituya con los mismo archivos, usuarios, etc.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.