rsync es una herramienta fantástica que permite hacer sincronizaciones en un sentido, sincronizando solo los archivos que han cambiado.
Normalmente viene instalado pero si no es así:
rsync podemos encontrarlo en todas las distros linux y opera de forma similar a ssh, scp y cp.
Hay dos modos de sincronización, enviando el contenido dentro de un directorio o sincronizando el contenido del directorio en otro.
Vamos ha hacer una sincronización del directorio1 al directorio2
-r
significa de forma recursiva
-a
Significa “archivo” y sincroniza de manera recursiva, además conserva los enlaces simbólicos, los archivos especiales y de dispositivo, fechas de modificación, grupo, propietario y permisos. Se utiliza con más frecuencia que =-r=
rsync nos permite hacer una simulación de como se va a producir la sincronización con la opción. -n
o --dry-run
.
Con la opción -v
podemos visualizarlo:
Para sincronizar con directorios remotos via SSH, es necesario tener instalado rsync en ambos dispositivos.
Sincronización de local a remoto
Sincronización de remoto a local
Si utilizas SSH con archivo de configuración, para evitar poner el usuario e IP, puedes utilizar el nombre que hayas añadido en el archivo de configuración. Imagina que he utilizado vps como nombre del servidor. Lo haríamos así:
-z
= Permite comprimir los archivos antes de enviar, para que la transferencia de datos sea más baja-P
= Es la unión de los indicadores --progress
y --partial
. El primero es una barra de progreso de las transferencias, el segundo permite reanudar las transferencias interrumpidas.--delete
= Elimina los archivos en el destino si se eliminan en origen--exclude=
= Excluir archivos o directorios. Si quieres añadir varias opciones, separalas con comas. Ejemplo: --exclude={'file1.txt','dir1/*','dir2'}
--exclude-from
= Utiliza un archivo de texto plano para añadir los archivos y directorios a excluir--include=
= Igual que exclude pero para indicar los directorios o archivos a incluir.--backup
y --backup-dir
= Ambos van juntos, el primero almacena copias de seguridad importantes y la segunda opción indica el que directorio se guardan--log-file=
= Añade la ruta y archivo donde quieres guardar los logs. rsync guarda los archivos y directorios que se han sincronizadoUtiliza las opciones -nv
para comprobar los archivos incluidos o excluidos y ver como sería la sincronización antes de hacerla.
Publicado por Angel el Tuesday 28 June del 2022
También te puede interesar:
Powered by org-bash-blog
Written in OrgMode with Emacs and converted to HTML with Pandoc
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 4.0 Internacional.