¿Te ha gustado el artículo?
0
¿Te ha gustado el artículo?
0

Copias de seguridad con rsync

Para todo proyecto web, hacer copias de seguridad debe ser una prioridad. Quien no realice copias de seguridad de su servidor constantemente, corre el riesgo de no poder recuperar los datos perdidos. Entre las muchas soluciones de backup disponibles se encuentra el protocolo rsync. Esta aplicación con licencia GPL puede ser utilizada libremente y se encarga principalmente de la transferencia de datos desde la carpeta de origen hasta el directorio de destino –a nivel local o dentro de una red. En el proceso se comparan el tamaño y la fecha de creación de los archivos de las carpetas de origen con las carpetas de destino, de modo que en cada sincronización solo sea necesario copiar aquellos archivos que hayan sido modificados. Este sistema de backup incremental tiene la ventaja de que es ejecutable fácilmente y demanda poco espacio de almacenamiento.  

La transferencia de datos entre sistemas

La comunicación entre el archivo fuente y de destino tiene lugar, por defecto, a través del protocolo de comunicación TCP (Puerto 873) –con la única condición de que exista un servidor rsync que ya se esté ejecutando. El acceso a un Remote Shell (RSH) sin cifrar o a un Secure Shell (SSH) encriptado también es posible. rsync se ejecuta en Windows, así como en los principales sistemas operativos UNIX, una vez instalado Cygwin (una extensión de Linux). En el mercado existen, además, varios programas de sincronización para Mac OS X, Linux y Windows, basados igualmente en el protocolo rsync. El programa rsnapshot permite realizar copias de seguridad completas o diferenciales. Como rsync, este copia los archivos y crea los llamados enlaces duros (del inglés hard link) de aquellos archivos que no requieran un almacenamiento físico.

El directorio de destino de la copia de seguridad puede estar en el mismo equipo o en un medio de almacenamiento externo. Así, dependiendo de la extensión, se tratará de un disco duro portátil e incluso de otro servidor – por ejemplo, para crear la réplica de un servidor. Ya que el proceso de transmisión se hace de forma comprimida y rápida, rsync resulta especialmente útil para la sincronización de datos en servidores o dispositivos con una conexión de datos deficiente. rsync permite, incluso, la transmisión entre dos equipos en un mismo centro de datos.
A continuación, presentamos los aspectos más relevantes de las copias de seguridad creadas con rsync:

  • No se requiere mantenimiento diario
  • Red de transferencia de datos comprimidos
  • Es posible limitar el ancho de banda durante la creación de la copia de seguridad
  • Transferencia segura a través de una conexión SSH
  • Permite transmitir grandes cantidades de datos sin problemas
  • Carga rápida de las copias de seguridad

Configuración de rsync en los servidores Linux

Para empezar a utilizar rsync en los sistemas operativos Linux es necesario instalar el protocolo en el paquete homónimo para crear posteriormente copias de seguridad valiéndose de comandos en la terminal. Alternativamente, es posible acceder a aplicaciones como Back in Time, rsnapshot (para copias de seguridad periódicas y automatizadas) o a Unison, que permiten controlar el proceso a través de una interfaz gráfica.

A continuación presentamos los pasos más importantes en el establecimiento e implementación de nsync para Ubuntu:

  1. rsync está instalado en Ubuntu de forma predeterminada. En caso de no ser así, se puede instalar con el siguiente comando:

    sudo apt-get install rsync

  2. Una vez instalado rsync se pueden utilizar una serie de comandos que permiten determinar el directorio de origen y de destino, así como las características del backup. La sintaxis de los comandos es la siguiente:

    rsync -OPCIONES/ORIGEN DESTINO

    El parámetro ORIGEN indica la ubicación respectiva de los archivos, el DESTINO define el directorio final y las OPCIONES hacen referencia a los respectivos valores de la copia de seguridad.

  3. Para conservar los derechos y los propietarios de los archivos en las copias de seguridad se recomienda utilizar Option –a, que recoge todas las propiedades e incluye además, los siguientes ajustes:

    • -r
      • Copiar subdirectorios

    • -l
      • Copiar los enlaces simbólicos

    • -p
      • Mantener los derechos de los archivos

    • -t
      • Mantener la fecha de los archivos

    • -g
      • Mantener los derechos de grupo del archivo de origen

    • -o
      • Mantener los derechos del grupo

    • -d
      • Mantener los archivos de los dispositivos

  4. Otras opciones importantes para configurar el proceso son:

    • -h
      • Explicar los comentarios en detalle

    • -u
      • Omitir los archivos ya actualizados en la carpeta de destino

    • -v
      • Mostrar todos los pasos durante el proceso de creación del backup

    • -n
      • Crear una copia de seguridad de prueba

    • --bwlimit
      • Reducir el ancho de banda; p. ej., --bwlimit=30 (límite de 30 kbit/s)

    • --exclude
      • Excluir la sincronización de carpetas; p. ej., --exclude archivoxyz

    • --delete
      • Comparar directorios y eliminar archivos inexistentes

    • --stats
      • Mostrar un informe del proceso de creación del backup

  5. Es aconsejable realizar una copia de seguridad de prueba (-n)  y comprobar el correcto funcionamiento de los parámetros y directorios especificados, ya que una información errónea puede resultar, en el peor de los casos, en pérdida de datos. En caso de que algunos archivos no se copien de manera adecuada, esto suele deberse a la falta de derechos de acceso. En tal caso es posible ejecutar el siguiente comando como administrador del sistema:

    sudo rsync -OPCIONES /ORIGEN DESTINO 

Protege tu servidor Windows usando rsync

Para los usuarios de Windows, rsync es una alternativa muy interesante y asequible en comparación con el software para realizar copias de seguridad más caro. Sin embargo, para poder utilizar este protocolo de transferencia, es necesario instalar Cygwin. El uso de esta extensión de Linux funciona en diferentes sistemas operativos –entre ellos Windows y Linux. Para efectuar la instalación, es necesario:

  1. Descargar Cywing desde el siguiente enlace: https://cygwin.com/index.html

  2. Abrir el gestor de paquetes, seleccionar los módulos "rsync" y "openshh" e instalarlos. Resulta muy útil crear un acceso directo en el menú de inicio o en el escritorio.

  3. Abrir el terminal Cywing utilizando el acceso directo que se ha creado e iniciar la configuración SSH con el siguiente comando:

    ssh-host-config (solo es posible si se hace como administrador del sistema)

  4. Responder a las preguntas que aparecerán a continuación con “yes” y la pregunta “Do you want to use a different name?” (¿Deseas elegir otro nombre?) con un “no”. Finalmente, deberás crear una nueva cuenta de usuario con su respectiva contraseña a través de la opción “yes”.

  5. Reiniciar el servicio SSH con el siguiente comando:

    net start sshd

  6. De esta forma ha sido completada la configuración de rsync. Ahora, el protocolo podrá ser utilizado a través de la terminal de Cygwin usando los comandos Linux tradicionales. En caso de que el programa se use en Windows, es importante prestar atención a las rutas específicas utilizadas, así como a los usuarios y grupos.

Windows Linux Copia de Seguridad Base de Datos