rsync
Rsync es una herramienta fabulosa para hacer sincronizaciones sin importa que tipo de sistema es el origen o el destino con infinidad de opciones, aunque le faltaría un entorno gráfico aunque hay algunos hechos por terceros.
# rsync -avzh /home/imd/ /backups/imd/
# rsync -avzh /home/imd/ usuario@IP:/backups/imd/Si queremos hacerlo vía SSH mucho más seguro:
# rsync -avzh -e 'ssh -p port' /home/imd/ usuario@IP:/backups/imd/
# rsync -avzh usuario@IP:/backups/imd/ /home/imd/Si queremos hacerlo vía SSH mucho más seguro:
# rsync -avzh -e 'ssh -p port' usuario@IP:/backups/imd/ /home/imd/
--progress va indicando el progreso según va copiando ficheros, aunque es interesante la información que da sobre todo en ficheros grandes puedes ser abrumadira la cantidad de lines si se transfieren muchos ficheros.
--include 'regex' solo transfiere los ficheros que coincidan lo la expresión regular (regex). Se pueden poner varias veces para incluir diferentes expresiones.
--exclude 'regex' No transfiere los ficheros que coincidan lo la expresión regular (regex). Se pueden poner varias veces para excluir diferentes expresiones.
--delete, --delete-before, borra los ficheros en destino que NO están en origen, para que queden igual origen y destino. El primero borra según va sincronizando y el segundo lo hace antes de empezar a transferir, util para saber que va a borrar antes de hacer nada.
--dry-run, simula lo que se haría sin hacer nada, es una buena opción para ver que pasará antes de proceder por si borramos o copiamos algo que NO queremos.
--iconv=charset, indica que charset usar para copiar, en OSX para copiar en linux una buena opción es: --iconv=utf-8-mac,utf-8