RSYNC. Sincronizando ficheros comodamente. 1


Conozco desde hace mucho rsync, al menos en teoría, pero nunca le había metido mano. Hace unos días por trabajo me encontré en la necesidad de desplegar simultáneamente el mismo aplicativo en distintos servidores y me acordé de él. Así que me dispuse a hacer una prueba y si todo iba bien le metería mano a lo que comento.

 

RSYNC. Es una herramienta para sincronizar los ficheros y directorios que tenemos almacenados en un sitio en otro diferente minimizando la transferencia de datos. En realidad, rsync son dos cosas: un algoritmo de delta compression para sincronizar dos ficheros similares y una utilidad que usa dicho algoritmo junto con otras técnicas para hacer mirroring de ficheros y directorios en otro sitio transfiriendo la mínima cantidad de datos posible.

Como características interesantes tiene:

  • Soporte para copiar enlaces, ficheros de dispositivo, propietarios, grupos y permisos.
  • Opciones de exclusión de ficheros basada en patrones.
  • Capacidad para ignorar los fichero que CVS ignoraría
  • Se puede usar cualquier shell remota transparente, como ssh o rsh
  • No es necesario ser root para usarlo
  • Sincronización de ficheros en una dirección.
  • Capacidad para comparar ficheros ya sea por tamaño y fecha o checksum.
  • Capacidad para sustituir el fichero completo o sólo la parte que cambia.
  • Capacidad para transmitir la información comprimida.
La prueba que voy a hacer es crear un script de backup para mis datos entre dos unidades de mi equipo. Una portátil y la otra no.

El comando quedaría:

rsync -auCv –delete dirA dirB

 

  • a (–archive). Esta opción combina el parámetro -r (recursivo), -l (copia enlaces simbólicos como enlaces simbólicos), -p (mantiene los permisos), -t (mantiene la hora del fichero), -g (mantiene los grupos), -o (mantiene el propietario), -D (mantiene los ficheros de dispositivo para root) . No se mantienen los hard links (-H) ni las ACLs (-A) por defecto.

  • -u. Para que no se sobreescriban los ficheros del destino que son más recientes que los del origen.

  • -C (–cvs-exclude). Excluye en la sincronización los mismos ficheros que ignoraría CVS. Excluiría: RCS SCCS CVS CVS.adm RCS.LOG cvslog.* tags TAGS .make.state .nse_depinfo *~ #* .#* ,* _$* *$ *.old *.bak *.BAK *.orig *.rej .del-* *.a *.olb *.o *.obj *.so *.exe *.Z *.elc *.ln core .svn/ .git/ .bzr/

  • -v. Verbose.

  • –delete. Borra ficheros en el lado que recibe que no están en el lado que emite.

  • DirA. Directorio origen. Si finalizase por “/” lo que se copiaría es el contenido de los directorios.

  • DirB. Directorio destino.

 

Fuentes

 
Compartir
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

Dejar un comentario

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

Una idea sobre “RSYNC. Sincronizando ficheros comodamente.