---
title: "Comando rsync en Linux"
description: "De vuelta de nuevo por Indaga... El comando rsync (que significa remote synchronization o sincronización remota) es una herramienta poderosa y versátil para sincronizar archivos y directorios entre..."
url: https://indaga.net/comando-rsync-en-linux/
date: 2024-08-12
modified: 2024-08-12
author: "Directorio Indaga"
image: https://indaga.net/wp-content/uploads/2024/08/sincronizacion.jpg
categories: ["GNU Linux"]
tags: ["backups", "comandos linux", "copias seguridad en linux", "gnu linux", "linux", "rsync", "sincronizacion datos"]
type: post
lang: es
---

# Comando rsync en Linux

**De vuelta de nuevo por Indaga…****

El comando **rsync** (que significa *remote synchronization* o sincronización remota) es una herramienta poderosa y versátil para sincronizar archivos y directorios entre dos ubicaciones. **rsync** se puede usar para replicar datos, realizar copias de seguridad incrementales, copiar archivos entre sistemas y como reemplazo de los comandos **scp**, **sftp** y **cp**.

**rsync** emplea un algoritmo que reduce la cantidad de datos transferidos al copiar únicamente las partes de los archivos que han sido modificadas. También puede reanudar transferencias interrumpidas y ofrece opciones para excluir archivos, comprimir datos durante la transferencia y mucho más…

Veamos las opciones más comunes y algunos ejemplos de uso. Al final, dejo un pequeño script que estoy utilizando para hacer copias de seguridad recursivas de mi usuario a 2 discos duros externos, excluyendo la caché de Firefox y Edge. Pero ahora, veamos las opciones más comunes de rsync y algunos pequeños ejemplos:

** Opciones Comunes**

– **-a, –archive**: Modo de archivo, que es equivalente a -rlptgoD. Esto le dice a rsync que sincronice directorios recursivamente, transfiera dispositivos especiales y de bloque, y preserve enlaces simbólicos, tiempos de modificación, grupos, propiedad y permisos

– **-z, –compress**: Comprime los datos mientras se envían a la máquina de destino. Útil si la conexión es lenta

– **-P**: Equivalente a –partial –progress. Muestra una barra de progreso durante la transferencia y mantiene los archivos parcialmente transferidos

– **–delete**: Elimina archivos extraños de la ubicación de destino. Útil para espejar datos

– **-q, –quiet**: Suprime mensajes que no sean de error

– **-e**: Permite elegir un shell remoto diferente. Por defecto, rsync está configurado para usar ssh

** Más Opciones**

– **-r, –recursive**: Sincroniza directorios de forma recursiva

– **-b, –backup**: Realiza una copia de seguridad durante la sincronización

– **-h, –human-readable**: Muestra los números en un formato legible para humanos

– **-n, –dry-run**: Realiza una prueba sin hacer cambios reales. Útil para verificar qué se va a sincronizar

– **-v, –verbose**: Muestra detalles de la transferencia

– **–exclude**: Excluye archivos o directorios específicos de la sincronización

– **–include**: Incluye archivos o directorios específicos en la sincronización

– **–max-size**: Establece un tamaño máximo para los archivos a transferir

– **–min-size**: Establece un tamaño mínimo para los archivos a transferir

– **–bwlimit**: Limita el ancho de banda utilizado durante la transferencia

– **-u, –update**: Omite los archivos que ya existen en el destino y son más nuevos que los archivos de origen. Esto es útil para evitar sobrescribir archivos más recientes en el destino

** Ejemplos de Uso**

1. **Copiar un archivo de una ubicación local a otra:**

`

rsync -a /opt/archivo.zip /tmp/

`

2. **Sincronizar directorios con exclusión de un subdirectorio:

`

rsync -avz --exclude 'temp/' /origen/ /destino/

`**

3. **Sincronizar directorios y omitir archivos más nuevos en el destino:

`

rsync -avu /origen/ /destino/

`**

**Ejemplo de script en bash para realizar una copia de seguridad de la carpeta de tu usuario a 2 discos duros externos, excluyendo la caché de Edge y Firefox**:

`

#!/bin/bash

echo "Se va a realizar una copia de seguridad de tu usuario a todas las unidades externas."

# Eliminar la caché de Microsoft Edge

# rm -rf ~/.config/microman rsyncqsoft-edge/Default/Cache/*

# Eliminar la caché de Firefox

# rm -rf ~/.cache/mozilla/firefox/*.default-release/cache2/*

# Ahora las copias de todo el usuario

rsync -avu --exclude='/home/tu_usuario/.cache/microsoft-edge/*' --exclude='/home/tu_usuario/.cache/mozilla/firefox/*' /home/tu_usuario /media/tu_usuario/DISCO_EXTERNO/BACKUP

rsync -av --exclude='/home/tu_usuario/.cache/microsoft-edge/*' --exclude='/home/tu_usuario/.cache/mozilla/firefox/*' /home/tu_usuario /media/tu_usuario/DISCO_EXTERNO2/BACKUP

`

**+ recursos**

– **rsync (Wikipedia):** [https://es.wikipedia.org/wiki/Rsync](https://es.wikipedia.org/wiki/Rsync)

– **rsync – Manual de uso:** [https://www.linuxtotal.com.mx/index.php?cont=rsync-manual-de-uso](https://www.linuxtotal.com.mx/index.php?cont=rsync-manual-de-uso)

– **Cómo usar Rsync para sincronizar directorios locales y remotos:** [https://www.digitalocean.com/community/tutorials/how-to-use-rsync-to-sync-local-and-remote-directories-es](https://www.digitalocean.com/community/tutorials/how-to-use-rsync-to-sync-local-and-remote-directories-es)

– **rsync (SS64)**: [https://ss64.com/bash/rsync.html](https://ss64.com/bash/rsync.html)
