Guía básica de la herramienta rsync
Actualizado el 7 de octubre, 2016. Por BlueHosting.
rsync es una herramienta de copiado y sincronización de archivos utilizada en los sistemas operativos Linux y OSX. Es muy útil para respaldar el contenido de su sitio web en un computador local, pero también sirve para enviar contenido local a un servidor web. También permite la sincronización rápida de archivos entre dos computadores para que el mismo se mantenga actualizado. En este tutorial abordamos los conceptos más básicos correspondientes a esta herramienta.
Usar rsync para publicar sus archivos
Cuando utiliza rsync para subir o cargar sus archivos —o los cambios en sus archivos— esta herramienta es capaz de determinar cuáles archivos han cambiado y subir solo aquellos que han sufrido modificaciones. Esto asegura que un archivo no se duplique durante la sincronización.
Ejemplo básico
El caso presentado a continuación es un ejemplo simple sin filtros. Un comando típico para el envío de contenido a un web host es similar a lo siguiente:
rsync -e "/usr/bin/ssh" --bwlimit=2000 -av directorio_local miusuario@servidor.BlueHosting.com:directorio_remoto
Explicación de cada campo:
- rsync: siempre se comienza con el comando correspondiente a la herramienta.
- -e: especifica el programa shell remoto a utilizar. Este siempre puede quedarse como
/usr/bin/ssh
. - bwlimit: le permite especificar una tasa máxima de transferencia en kb/seg.
- -av: modo de archivo y modo detallado.
- directorio_local: este es el directorio local de su computador donde almacena los datos a ser cargados.
- miusuario: este es el nombre de usuario asignado para inicio de sesión shell en su BlueHosting.
- servidor: este es el nombre del servidor en el cual usted subirá el contenido.
- directorio_remoto: este es el directorio en el servidor en el cual usted va a subir el contenido en cuestión.
Nota:
Para evitar errores, se recomienda utilizar la ruta completa de los directorios local y remoto.
Configurar filtros
También es posible configurar filtros para seleccionar cuáles archivos se incluirán y cuáles se ignorarán. Esto hace posible que se tenga una configuración completamente automatizada una vez que sus filtros sean dispuestos correctamente.
Ejemplo de filtro
La forma más sencilla de agregar un filtro es añadirlo en la línea de comando de rsync. Por ejemplo, podría hacer lo siguiente para filtrar los archivos .pyc
y los directorios /.git
:
rsync --filter '- *.pyc' --filter '- /.git' -e "/usr/bin/ssh" --bwlimit=2000 -av directorio_local miusuario@servidor.BlueHosting.com:directorio_remoto
rsync para Windows
La herramienta rsync también está disponible para Windows, pero la configuración incluye algunos pasos adicionales. Una solución es utilizar Delta Copy. La versión Wihout Installer funciona bastante bien.
Nota:
Un detalle importante sobre rsync para Windows es que debe usar rutas de archivos y directorios con el mismo formato de Unix aun cuando se encuentre en una máquina Windows.
Recursos adicionales
Puede consultar los siguientes recursos en busca de información adicional referente a este tema. Aunque este material es provisto esperando que sea útil, tome en cuenta que no podemos certificar la actualidad o precisión de los contenidos externos.