Comando rsync para copias remotas

La necesidadcopy-logo

Hacer una copia de seguridad de los datos de mi pc local a un pc remoto el cual solo tiene el sistema operativo básico (nada de entorno gráfico) y bastante espacio libre en el disco duro.

Con scp demoraba demasiado, así que me obligue a buscar otra solución

El comando y las opciones

Según nuestra amiga la wikipedia

“Rsync es una aplicación para sistemas de tipo Unix que ofrece transmisión eficiente de datos incrementales comprimidos y cifrados. Mediante una técnica de delta encoding, permite sincronizar archivos y directorios entre dos máquinas de una red o entre dos ubicaciones en una misma máquina, minimizando el volumen de datos transferidos.”

Si deseas saber mas información sobre la aplicación puedes consultar en la wikipedia la información

El comando que utilicé dice básicamente:

$ rsync -uarmzhP –delete –rsh=ssh –stats /local/dir user@ipremota:/remote/dir

Las opciones son:

-u : update

-a: archive mode

-r: recursive

-m: no envía los directorios vacíos

-z: comprime mientras transfiere (así se ahorra tiempo y ancho de banda)

-h: presentación para humanos

-P: muestra el progreso de la copia

–delete: borra en el destin0 los archivos que ya no estén en el origen

–rsh: especifica el shell remoto a usar (en este ejemplo ssh)

–stats: entrega alguna información por cada archivo que transfiere

Nota: las 3 ultimas opciones tienen dos guiones unidos (– –)

Luego se coloca el directorio origen de la información (para el ejemplo /local/dir) y a continuación el usuario, símbolo de arroba y dirección ip de la máquina destino y también el directorio destino (user@ipremota:/remote/dir) estas opciones en la máquina destino se deben a que estamos usando ssh como protocolo de transferencia.

Por ultimo pide el passwd del usuario en la maquina destino y listo… comienza la copia.

Otra opción bastante poderosa es:

“–exclude-from=nofiles”

El archivo “nofiles” (puede ser cualquier nombre) es un archivo en el cual se colocan los archivos a no hacer backup, separados en líneas diferentes. Por ejemplo:

*.avi

*.mpg

*.mp3

Al ser tan complejo y poderoso se pueden utilizar muchas otras opciones… puedes mirar el sitio web de rsync para encontrar más opciones y ejemplos. O también con man rsync se encuentran otras opciones.

Un nuevo comienzo

En ocasiones es necesario un nuevo comienzo para avanzar más rápido
Hoy 21 de mayo comencé a trabajar en una nueva empresa ocupando el cargo de DevOps
Durante mi carrera profesional me he desempeñado como SysAdmin administrando servidores físicos y virtuales así como temas en la nube.
Pero el mercado actual se está enfocando en el área de DevOps y herramientas en la nube más avanzadas que crear una simple máquina (física o virtual)
Gracias a este nuevo empleo espero mejorar mis conocimientos en el área y apoyar / aprender más sobre el tema.
Antes manejaba este blog en otro sitio pero por cosas del destino (mala administración) el contenido anterior se perdió, por esto considero que es momento de cambiar el enfoque de mi blog y por esto utilizaré una herramienta simple para escribir más seguido contenido y despreocuparme de temas administrativos del mismo.
Por este motivo elegí WordPress en su plan pago como sistema para manejo de contenidos.