He hecho una copia de seguridad de un servidor web Linux usando rsync con cygwin. Ahora tengo una copia perfecta del servidor en mi computadora portátil con Windows. Si elimino o modifico un archivo en mi computadora portátil y ejecuto rsync nuevamente con cygwin, ¿eliminará / actualizará el mismo archivo en el servidor? Tengo la impresión de que si elimino / modifico en el servidor y ejecuto rsync en mi computadora portátil, eliminará / modificará el archivo local en mi computadora portátil, pero ¿funciona esto a la inversa?
25
unison
. Es una herramienta de sincronización que guarda el estado del archivo en ambas copias y, por lo tanto, permite la sincronización bidireccional. También hay un paquete cygwin.Respuestas:
Rsync realiza una sincronización unidireccional, sin embargo, depende de usted decidir en qué dirección va la sincronización.
La sintaxis del comando Rsync es la siguiente:
Tenga en cuenta que especifica la sincronización del origen al destino. El origen y el destino pueden ser cualquier ruta local o remota.
Por ejemplo, si desea copiar archivos de su servidor a su computadora portátil, haga lo siguiente:
Para sincronizar en la dirección opuesta que haces:
Entonces, para responder a su pregunta: depende de cómo ejecute rsync.
Si desea que los archivos se eliminen en el destino, debe usar la
--delete
opción. Pero tenga cuidado con esto, porque si comete un error al especificar su fuente, terminará eliminando todo en su destino. Es más seguro probar su sincronización sin--delete
opción primero y una vez que esté satisfecho con su funcionamiento, puede agregar la--delete
opción.Según lo sugerido por masegaloeh en los comentarios de abajo,
-n
o--dry-run
opción puede también ser utilizado para probarrsync
el comportamiento del sistema.fuente
-n
o--dry-run
, para que sepa qué archivo será borrado y modificadoUna herramienta de envoltura escrita en python3 llamada
bsync
que ajustafind
y ordenarsync
simplifica la tarea. Repo de Github: https://github.com/dooblem/bsyncNo se asuste cuando está en github (es decir, de una manera que cree que debe ser un programador para usar la herramienta).
fuente
considere usar --delete-after y no --delete, esto asegurará que su destinatario elimine los archivos después de la transferencia, no antes.
fuente
rsync
eliminar nada. Está borrando cosas por su cuenta. Dicho esto, una pista útil para rsync'ing en general. Gracias.