Mostrando entradas con la etiqueta Linux. Mostrar todas las entradas
Mostrando entradas con la etiqueta Linux. Mostrar todas las entradas

miércoles, 18 de enero de 2012

Sincronización con RSync

RSync es una herramienta para Unix que permite sincronizar una carpeta con otra (remota o no) o como los autores especifican en la man page: "a fast, versatile, remote (and local) file-copying tool".


Los casos de uso son variados según la necesidad, por ejemplo, tenemos una copia local de archivos fuente de un proyecto web, deseamos publicar las modificaciones en el servidor de producción. Este sería el más común (por lo menos en mi caso) de los escenarios.




La carpeta src dentro del server A (o pc de trabajo) puede tener archivos que no se necesiten subir, o carpetas que no debe porque matchear contra la que está en el servidor B, todo esto lo resuelve el rsync según la configuración utilizada.


Como dije antes, es un comando de Unix, es por esto que tenemos la ventaja de usar "la bash" para generar un script completo complejo  que nos permita realizar muchas tareas.


Especificación del comando
rsync {opciones} {conexión} {origen} {destino}


Opciones

  • -v, --verbose               Extender info
  • -q, --quiet                 Suprimir información que no sean errores
  • -c, --checksum              utilizar solo el checksum para evaluar la comparación de archivos
  • -a, --archive               archive mode; equals -rlptgoD (no -H,-A,-X)
  • -r, --recursive             recursivo dentro de directorios
  • -b, --backup                realizar un backup (ver --suffix & --backup-dir)
  •     --backup-dir=DIR        realizar backup dentro de DIR
  •     --suffix=SUFFIX         backup suffix (default ~ w/o --backup-dir)
  • -p, --perms                 preservar permissions
  • -E, --executability         preservar executability
  • -o, --owner                 preservar owner (super-user only)
  • -g, --group                 preservar group
  • -t, --times                 preservar modification times
  • -n, --dry-run               Realizar una corrida en seco, excelente para poder probar si lo que hacemos es lo que necesitamos.
  • -z, --compress              comprimir durante la transferencia
  •     --compress-level=NUM    compression level
  • -f, --filter=RULE           Necesario al momento de realizar exclusiones (por ejemplo, carpetas .svn, archivos .project, etc)
  •     --exclude=PATTERN       matching PATTERN
  •     --exclude-from=FILE     Desde un archivo "FILE"
  •     --include=PATTERN       inverso al exclude
  •     --include-from=FILE     inverso exclude-from
  •     --files-from=FILE       inverso files-from
  • -h, --human-readable        En formato legible por humanos
  •     --progress              Mostrar el progreso (esto genera mucha suciedad al momento de ver el log)
  • -4, --ipv4                  preferir uso de IPv4
  • -6, --ipv6                  preferir uso de IPv6
  •     --delete                borrar archivos del destino que no macheen
Yo particularmente utilizo la configuración: -avz con eso basta para transferir los archivos de una carpeta a otra.

Script para bash:

#!/bin/bash
HOME=/home/usuario/carpeta/src/
DEST=/var/www/sitio/src/
rsync -avz --delete --exclude=.svn --exclude=Thumbs.db  $HOME $DEST
echo "Done"

En los casos donde deba copiar por ssh al servidor de destino:

#!/bin/bash
HOME=/home/usuario/carpeta/src/
DEST=usuario@ip_destino_o_direccion:/var/www/sitio/src/
rsync -avz --delete --exclude=.svn --exclude=Thumbs.db  $HOME $DEST
echo "Done"

Luego podemos combinar opciones del ssh (como por ejemplo obtener el password para conectarse desde un archivo) para incrementar los usos de ambas herramientas según nuestra necesidad.

miércoles, 22 de abril de 2009

Festival Latinoamericano de Instalación de Software Libre Flisol 2009 Montevideo - Uruguay

Bueno este próximo 25 de Abril es el Festival Latinoamericano de Instalación de Software Libre tanto en Montevideo como en otros departamentos de nuestro país (y por supuesto, del mundo).




Desde la web del sitio, ¿que es el Flisol?

Es el Festival Latinoamericano de Instalación de Software Libre (FLISoL) es el evento de difusión de Software Libre más grande en Latinoamérica. Se realiza desde el año 2005 y su principal objetivo es promover el uso del software libre, dando a conocer al público en general su filosofía, alcances, avances y desarrollo.

Para tal fin, las diversas comunidades locales de software libre (en cada país, en cada ciudad/localidad), organizan simultáneamente eventos en los que se instala, de manera gratuita y totalmente legal, software libre en las computadoras que llevan los asistentes. Además, en forma paralela, se ofrecen charlas, ponencias y talleres, sobre temáticas locales, nacionales y latinoamericanas en torno al Software Libre, en toda su gama de expresiones: artística, académica, empresarial y social.




Itinerario:

Anfiteatro Antel

9:00

Apertura

Agradimientos, mención de sponsor etc.

9:30-10:15

Enrique Verdes

Software Libre: guía de supervivencia.

10:30-11:15

Andrea Mangiatordi

Tecnologías de accesibilidad.

11:30-12:15

Mauricio Campiglia

Filtrado de contenidos para padres.

12:30-13:15

Macello Farias

Amenazas en Internet.

13:15-14:00

Receso: Comida,música, etc.


14:00-14:45

Nicolás Levy

Taller Básico de Ubuntu

15:00-15:45

Nicolás Levy

Taller Básico de Ubuntu

16:00-16:45

Marcelo Ramos

El lenguaje de programación Python

17:00-17:45

Nestor Flaquer y Graciela

Uso básico de la Xo.

18:00-18:30

Nestor Flaquer y Graciela

Uso básico de la Xo.

18:30

Fernando Da Rosa

Software Libre y apropiación tecnológica.


Sala Interactiva

9:30-10:15



10:30-11:15

Alejandro Segovia

Ceibal Chess

11:30-12:15

Ceibal Jam

Programación

12:30-13:15

Ceibal Jam

Programación

13:15-14:00

Receso: Comida,música, etc.


14:00-14:45

Virginia Demarco

Taller de Gimp

15:00-15:45

Nicolás Pence

*BSD Sistemas Operativos Libres Alternativos.

16:00-16:45

Carlos Moreira, Mitchel Quilici y Carlos Pirez

Promoviendo la independencia tecnológica

17:00-17:45

Ismael Castagnet Gabriela Rodríguez

Taller: "Democratización del conocimiento en la era de la información (oportunidades, amenazas y desafíos)"

18:00-18:30

Ismael Castagnet Gabriela Rodríguez

Taller: "Democratización del conocimiento en la era de la información (oportunidades, amenazas y desafíos)"

19:00

Cierre del Festival

Sorteos y mas ...