GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo usar rsync para hacer una copia de seguridad de los datos

Introducción

La copia de seguridad de los datos es una parte esencial de las infraestructuras tanto individuales como empresariales. Las máquinas con el sistema operativo Linux pueden usar rsync y ssh para facilitar el proceso.

Rsync es una utilidad de línea de comandos que le permite transferir archivos a ubicaciones locales y remotas. Rsync es conveniente de usar ya que viene por defecto con la mayoría de las distribuciones de Linux. Puede personalizar la herramienta utilizando muchas de las opciones disponibles.

En este caso de uso, usaremos SSH en combinación con rsync para asegurar la transferencia de archivos.

Siga este tutorial para aprender cómo usar rsync para hacer una copia de seguridad de los datos . La guía enumerará algunos ejemplos para ilustrar cómo funciona el proceso.

Requisitos previos

  • Sudo o raíz privilegios o un usuario con acceso a los directorios de copia de seguridad y de destino
  • Acceso SSH a un servidor a través de la línea de comandos/ventana de terminal
  • Rsync instalado en la máquina local y de destino

Sintaxis básica de Rsync para transferencias locales y externas

La sintaxis para usar la herramienta rsync es diferente para transferencias locales y remotas.

Para las copias de seguridad locales, la sintaxis sigue este patrón básico:

rsync 
options
 SOURCE DESTINATION

Para transferir archivos a una ubicación externa, usaremos un patrón un poco diferente:

rsync 
options 
 SOURCE [email protected]_or_hostname:DESTINATION

En ambos casos, el origen y el destino son un directorio o una ruta de archivo.

Copia de seguridad de datos con Rsync

Para una mejor comprensión de lo que hace rsync, usaremos el modificador detallado -v . Además, dado que haremos una copia de seguridad de los datos en los directorios, usaremos el modo de archivo -a para la sincronización recursiva. Hay muchas opciones y ejemplos de rsync, así que use cualquiera de ellos que necesite para su caso de uso.

Ejecución en seco de Rsync - Precauciones

La utilidad rsync le permite manipular sus datos de diferentes maneras. Por lo tanto, tenga cuidado al hacer una copia de seguridad de sus archivos. Si usa una opción incorrecta o un destino incorrecto, puede terminar mezclando sus datos. Peor aún, puede sobrescribir o eliminar archivos sin querer.

Por esa razón, use el --dry-run opción para confirmar que la herramienta hace lo que usted quiere hacer. Puede ocurrir una pérdida accidental de datos, pero esta opción ayuda a prevenirla.

Para transferencias simples, es posible que no necesite usar --dry-run , pero cuando se trata de un conjunto de datos más grande, le recomendamos encarecidamente que lo haga.

Use el formato de sintaxis básica y agregue --dry-run :

rsync
options 
 --dry-run SOURCE DESTINATION

Utilice Rsync para realizar copias de seguridad de datos localmente

Comenzaremos realizando una copia de seguridad de un directorio en la misma máquina Linux. La ruta puede ser cualquier ubicación:otra partición, disco duro, almacenamiento externo, etc.

Utilice la ruta completa tanto para el origen como para el destino para evitar errores.

Por ejemplo, para hacer una copia de seguridad de un Dir1 de Documentos a /media/hdd2/rscync_backup , use el comando rsync de esta forma:

rsync -av /home/test/Documents/Dir1 /media/hdd2/rsync_backup

El resultado muestra la lista de archivos y directorios transferidos y otros detalles de la transferencia.

Utilice Rsync para realizar copias de seguridad de datos a través de la red

Para una copia de seguridad segura de los datos a través de la red, rsync usa SSH para las transferencias. Su servidor debe configurarse para permitir la conexión SSH.

Una vez que logre conectarse a la máquina remota a través de SSH, puede comenzar a hacer una copia de seguridad de sus datos en una ubicación en esa máquina.

Por ejemplo, para hacer una copia de seguridad de Dir1 para copia de seguridad en otra máquina a través de la red, ingrese:

rsync -av /home/test/Documents/Dir1 [email protected]:/home/test/backup

La salida enumera los directorios y archivos que rsync transfirió a otra máquina.

Puede verificar si los archivos realmente están en el servidor remoto:

Si se está conectando por primera vez, deberá ingresar su contraseña y confirmar cuando reciba un aviso. No es necesario ingresar un nombre de usuario para transferencias remotas si desea conectarse como el usuario actual.

El ejemplo que usamos aquí asume que SSH usa el puerto predeterminado. Si necesita especificar un puerto diferente para la conexión SSH, use -e marque e ingrese las opciones de SSH.

Para especificar el puerto 4455, por ejemplo, ejecute el comando anterior en este formato:

rsync -av -e 'ssh -p 4455' /home/test/Documents/Dir1 [email protected]:/home/test/backup

Cuando sea necesario, puede eliminar los archivos de origen después de transferirlos a otra ubicación.

Comprimir datos al realizar una copia de seguridad con Rsync

Para ahorrar espacio, puede comprimir sus datos antes de transferirlos a otra ubicación. Puede usar la opción integrada de rsync para comprimir datos, o puede usar una herramienta diferente para hacerlo antes de ejecutar rsync.

Para comprimir datos durante la transferencia, use -z cambia con tu rsync comando.

rsync -avz /home/test/Documents/Dir1 [email protected]:/home/test/backup

Otra opción es usar el zip comando para comprimir sus archivos o directorio y luego ejecutar rsync . En nuestro caso, comprimiremos Dir1 en Dir.zip :

zip /home/test/Documents/Dir1.zip /home/test/Documents/Dir1

Luego transfiera ese archivo a otra ubicación:

rsync -avz /home/test/Documents/Dir1.zip [email protected]:/home/test/backup

Ahora, tiene una copia comprimida de su directorio en un servidor remoto. También puede hacer esto para transferencias locales si desea tener una copia de seguridad en otra unidad o partición.


Ubuntu
  1. Cómo usar el comando Linux Rsync (sincronización remota)

  2. Redis como caché:cómo funciona y por qué usarlo

  3. ¿Cómo usar Xkbprint?

  4. Cómo utilizar Deja Dup para realizar copias de seguridad en Amazon S3

  5. ¿Cómo usar el comando 'cp' para excluir un directorio específico?

Cómo usar Rsync

Cómo fusionar datos en Linux

Cómo usar Ubuntu

Cómo usar el comando rsync para copiar datos localmente y a través de SSH

Cómo usar FTP

Cómo usar Rsync y SSH en una canalización GitLab CI dockerizada