Categorías: Tutoriales

rsync. Ejemplos de uso 1/3

El otro día Carazo nos comentaba a través de la entrada Solucionar problemas al utilizar rsync con SAMBA una forma de evitar un problema específico usando rsync sobre un dominio con directorios compartidos bajo el protocolo SMB.

Es muy posible que muchos de vosotros ni siquiera lo hayais probado porque no os ha surgido esa problemática. Para que os familiariceis un poco con rsync os propongo una triple entrega en la que os muestro una serie de ejemplos simples para que pilléis, de menos a más, la forma de trabajo de rsync, que es bastante simple pero que si nunca usásteis os puede resultar extraña.

1. Sincronizar dos directorios locales.
Utilizaremos el comando rsync con parámetros -zvr. Ejemplo:

$ rsync -zvr /home/ahornero/Music/ /media/disk/Music/

-z habilitar compresión
-v modo verbose
-r recursivo (recorre los subdirectorios)

2. Preservar los timestamps
Al usar rsync, en el caso anterior mismamente, la fechas de creación / modificación han cambiado. Para preservarlos usamos el modo -a. Ejemplo:

$ rsync -azv /home/ahornero/Music/ /media/disk/Music/

3. Sincronizar un sólo archivo
Mucho más simple que lo anterior, es directo. En el ejemplo usamos el parámetro -v para saber qué está pasando (verbose mode):

$ rsync -v /home/ahornero/Music/Guardians_bso.mp3 /media/disk/Music/

4. Sincronizar archivos locales con remotos
Es también bastante directo, si os fijáis en el ejemplo solo varía el destino, que en este caso se trata de una dirección remota (nos comunicamos por SSH) y proporcionamos un nombre de usuario, porteriormente nos solicitará la contraseña de ese usuario en ese equipo remoto:

$ rsync -avz /home/ahornero/Music/ alberto@192.168.1.30:/home/alberto/Music/

5. Sincronizar archivos remotos con locales
Exactamente igual que el caso anterior pero con el origen y destino cambiados:

$ rsync -avz alberto@192.168.1.30:/home/alberto/Music/ /home/ahornero/Music/

En la próxima entrega, más. 😉

F. Javier Carazo Gil

Cofundador de CODECTION, empresa especializada en WordPress, autor de un libro sobre WordPress (el primero en español) y multitud de artículos (en medios físicos y virtuales) sobre el tema. Participa en la comunidad WordPress de forma activa siendo parte del equipo organizador de la WordPress Meetup de Córdoba, dando charlas en diferentes WordCamp y siendo autor y coautor de multitud de plugins libres y premium para WordPress de gran éxito.

Ver comentarios

  • Bastante interesante, la verdad que con ejemplos así sencillos ayuda bastante a entenderlo ;)

    Una duda, en el primero usas -zvr y en el resto -avz , se podría usar un -azvr para tener todo?

  • Tip: para los que trabajamos en entornos WinNT (Active Directory), si el servidor remoto , que en este caso suele ser un Win, no tiene corriendo el puerto 22 para permitir conexiones ssh, rsync no funciona. Recomiendo smbnetfs para montar en un directorio local la red CIFS; y, utilizando el path adecuado al directorio compartido correspondiente, usarlo como origen de datos a un directorio local.

  • Para especificar un puerto distinto al 22 utilizando rsync hay que pasarle la opción -e asi:

    rsync -e 'ssh -P9999'

    Cambiar el "9999" por el puerto que tengas configurado y ya funciona.

Compartir
Publicado por
F. Javier Carazo Gil

Entradas recientes

432 CVEs

5 días hace

Anti-IA

2 semanas hace

Memoria

3 semanas hace

Mal uso

4 semanas hace

Precio de la RAM

1 mes hace

AUR

1 mes hace