Grsync es una interfaz gráfica (GUI) para rsync, la herramienta para la línea de comandos de sincronización de directorios disponible en Linux. Si bien Grsync no permite acceder a toda la potencia que posee rsync, puede ser utilizado con mucha facilidad para sincronizar directorios (locales y remotos), sin necesidad de recordar parámetros extraños.
Muchos usuarios de Linux, sobre todo los que lo comienzan a utilizar luego de haber pasado varios años trabajando bajo Windows, se encuentran con que gran parte de la potencia que dispone el SO del pingüino se encuentra enterrada debajo de kilométricas líneas de comandos, que deben escribirse en una consola. Para quien ha trabajado toda su vida utilizando aplicaciones basadas en ventanas, resulta bastante incómodo, engorroso y complicado tener que recordar los parámetros necesarios para que los comandos disponibles hagan algo remotamente útil.
Entre las aplicaciones indispensables para cualquier usuario se encuentran las relacionadas con el resguardo de datos. Todos sabemos que, en cualquier momento, algo puede fallar, ocasionando que en un segundo toda nuestra colección de música, películas o ficheros del trabajo o el colegio desaparezcan para siempre. La mejor manera de prevenir esta desagradable situación es mantener una copia de nuestros datos sensibles en otro dispositivo, de forma que cuando pase lo peor, podamos rápidamente volver a tener nuestro sistema en condiciones. En Linux, una de las mejores alternativas para hacer esto es rsync.
Rsync proporciona un mecanismo muy eficiente para la transmisión de datos entre dos ubicaciones del sistema de archivos, se encuentren o no dentro de la misma máquina. En la práctica, esto significa que podremos utilizar esta herramienta para hacer copias de ficheros y directorios entre dos carpetas del mismo (o diferentes) discos duros en nuestro ordenador, a un ordenador diferente dentro de nuestra red de área local o a un dispositivo externo, como un pendrive o un disco duro con interfaz USB. Rsync hace backups incrementales, comprimidos y cifrados, por lo que se minimiza el volumen de datos transferidos. Incluso es capaz de enviar solo las partes de un fichero que tiene cambios, característica que permite ahorrar muchísimo tiempo en los backups incrementales. Sin embargo, el usuario debe acceder a toda esta funcionalidad escribiendo comandos desde la consola, por lo que muchas personas directamente ignoran su existencia.
Por ejemplo, si quisiésemos ejecutar rsync mostrando mensajes de estado por la pantalla (salida estándar), con compresión, a través de SSH, en forma recursiva para los subdirectorios, preservando fechas y permisos del archivo origen, incluyendo vínculos, borrando archivos que fueron borrados en el directorio origen, excluyendo ficheros de backups y temporales (*bak y *~), desde el directorio /www hacia el directorio /www en el host webserver, deberíamos escribir algo así:
rsync –verbose –compress –rsh=/usr/local/bin/ssh –recursive –times –perms –links –delete –exclude "*bak" –exclude "*~" /www/* webserver:/www
Como puede verse, el comando no es precisamente algo sencillo de recordar, sobre todo para quien está acostumbrado a una interfaz gráfica. Afortunadamente, existe Grsync, una interfaz gráfica (GUI) que nos brinda un mecanismo familiar, basado en ventanas, botones y solapas, para hacer esto mismo de una forma mucho más “humana”.
Como ves en las capturas, Grsync tiene tres pestañas desde las que pueden configurarse a gusto las opciones básicas, avanzadas y extras del programa. Incluso puede realizarse una simulación de la copia que hemos configurado antes de realizar el movimiento de bytes “real”. Muchos usuarios de Linux utilizan grsync para sincronizar su colección de música en el disco duro con sus dispositivos extraíbles, y en las empresas que poseen varios ordenadores es común ven como con Grsync y cron (la utilidad que “dispara” eventos en momentos prefijados) se automatizan las copia de seguridad de archivos a una unidad de red.
Desde Grsync accederemos a una multitud de opciones, tanto para expertos como para principiantes. En general, basta con decidir si vamos o no utilizar la compresión de los archivos, el tipo de copia que haremos o si comprobaremos la integridad de los datos al realizar la copia. Si estás comenzando a utilizar algunas de las distribuciones de Linux, que gracias al “éxito” de Windows Vista se han popularizado en los últimos meses, quizás quieras probar esta herramienta. Si no está incluida por defecto en tu sistema, necesitaras primero agregarla mediante el gestor de paquetes Synaptic o alguno similar.