Rsync

 

Generalidades

Este artículo proporciona información sobre cómo utilizar la herramienta de copia rsync.

Antecedentes

rsync es una herramienta rápida y versátil de copia y sincronización de archivos que se utiliza en los sistemas operativos Linux y macOS. Es útil para realizar respaldos de tu contenido en tu computador local, enviar el contenido a un servidor web y sincronizar rápidamente archivos entre dos computadores.

Usar sync para publicar tus archivos

Cuando utilizas rsync para cargar los archivos (o los cambios) de tu sitio, determina qué archivos han cambiado y carga solo los archivos modificados. Esto garantiza que un archivo no se duplique al sincronizar.

En los siguientes ejemplos, el username es tu usuario shell, y server es tu servidor web de DreamHost.

Aquí hay una sintáxis básica:

[server]$ rsync -e "/usr/bin/ssh" -av local_directory username@server.dreamhost.com:remote_directory

Para evitar errores, se recomienda utilizar la ruta completa tanto para los directorios locales como para los remotos. A continuación, se incluye un ejemplo completo:

[server]$ rsync -e "/usr/bin/ssh" -av /home/username/documents/mybackups username@server.dreamhost.com:/home/username/example.com 

Campos y filtros

Puedes usar varias configuraciones de campo y filtros cuando utilizas rsync.

Campos

Campo Descripción
rsync El comando rsync. Inicia siempre el comando completo con rsync.
-e Especifica el programa de shell remoto que se utilizará. Esto siempre puede ser /usr/bin/ssh.
bwlimit (Opcional) Te permite especificar una velocidad de transferencia máxima en kb/seg.
-av Modo archivo y verbose.
local_directory Este es el directorio local de tu computador donde almacenas los datos que se van a cargar. Por ejemplo: /home/username/documents/mybackups
username Este es el usuario shell de DreamHost asignado a tu sitio.
server Este es el nombre del servidor al que estás subiendo el contenido. Revisa el artículo FTP para obtener instrucciones sobre cómo ubicar este nombre.
remote_directory Este es el directorio del servidor al que deseas cargar el contenido. Por ejemplo, si deseas descargar todo el contenido del directorio /example.com, agrega la ruta completa del archivo en el servidor: /home/username/example.com/.

Si agregas una barra diagonal al final de la ruta, se descargará solo el contenido de ese directorio, pero no el nombre del directorio en sí. Si no agregas la barra diagonal, se descargará el directorio con todo lo que contiene.

Filtros

También es posible configurar filtros para incluir e ignorar determinados archivos. Esto permite tener una configuración completamente automatizada en un solo paso una vez que los filtros están en su lugar.

Ejemplo

Este comando filtra los archivos .pyc y los directorios /.git:

[server]$ rsync --filter '- *.pyc' --filter '- /.git'  -e "/usr/bin/ssh" -av local_directory username@server.dreamhost.com:remote_directory

Ver también

Enlaces de DreamHost

¿Este artículo ha respondido sus preguntas?

Última actualización el PST.

¿Aún no encuentra lo que busca?