Sincronizar archivos vía terminal, por Stan R. Busk

Una aplicación de terminal de Mac OS X que es francamente de gran utilidad es rsync. rsync es una herramienta que permite sincronizar directorios y archivos tanto locales como remotos. (mirroring).

Ejemplo: (el % representa el prompt de Darwin)

Yo tengo un ordenador de sobremesa (G4) y un iBook. Algunas veces me voy fuera y tengo que utilizar Mail. Pues nada, sincronizar el Mail del G4 con el iBook es de lo más sencillo…

1.- Conecto el iBook al G4 con un cable Firewire.

2.- Arranco el iBook pulsando la tecla T para que arranque como disco duro.

3.- Arranco el terminal.

4.- Escribo rsync -va ~/Library/Mail

5.- Añado un espacio al final (despues de /Mail)

6.- Selecciono la carpeta ‘Library’ de destino del iBook y la arrastro al Terminal.

Se pega el path despues del espacio y en mi caso se queda asi:

% rsync -va ~/Library/Mail /Volumes/Budworld/Users/stan/Library/

7.- Apreto Intro y voilà…el correo del G4 y del iBook se sincronizan.

8.- Desconecto el iBook y lo reinicio, abro Mail y tengo todo los correos del G4.

Lo bueno es que cuando vuelves de viaje, haces la operación inversa y sincronizas el G4 con el iBook.

La operación restaura privilegios, owner y group.

Mi applicación Mail tiene más de 50 buzones, algunos con más de 30.000 mensajes que suman un total de 800 MB. Efectuar una sincronización es extramadamente veloz ya que solo copia los cambios en los archivos (parametro -a) y no los archivos completos.

Tambien utilizo el comando

% rsync -a –delete –stats ~/Library/Mail /Volumes/Budworld/Users/stan/Library/

Con lo cual borra los archivos que ya no existen y crea un informe al final asi:

Number of files: 531

Number of files transferred: 7

Total file size: 821404994 bytes

Total transferred file size: 167258115 bytes

Literal data: 167258115 bytes

Matched data: 0 bytes

File list size: 12280

Total bytes written: 167291095

Total bytes read: 132

wrote 167291095 bytes read 132 bytes 7780987.30 bytes/sec

total size is 821404994 speedup is 4.91

Hay muchos parámetros para ajustar el funcionamiento de rsync. Caben destabar

-v, –verbose Muestra los archivos procesados en pantalla

-q, –quiet No muestra nada

-c, –checksum Efectua un checksum de los datos

-a, –archive Modo archivo (solo copia modificaciones)

-r, –recursive Recursión en los directorios

-R, –relative Rutas relativas

-b, –backup Crea un backup

-u, –update Solo actualiza (no sobreescribe los archvivos)

-l, –links Copia los enlaces symbolicos como enlaces symbolicos

-n, –dry-run Muestra una simulación de transferencia

-p, –perms Conservar los privilegios

-o, –owner Conservar el owner (solo root)

-g, –group Conservar el groupo

-z, –compress Comprimir los datos

Tambien hay comandos para excluir ciertos archivos…etc…

escribir ‘rsync’ en el terminal para ver la lista completa.

Si no está muy seguro de lo que haces utiliza los parametros -vn

Veras todo en pantalla lo que esto hace sin realmente hacerlo (modo simulación).

La utilización combinada de rsync y cron permite programar copias de seguridad completas o incrementales a volumenes tanto locales como remotos.

Estas son algunas de las grandes maravillas de Unix….:-)

Un artículo de Stan R. Busk. MAX Programming, LLC

0 0 votos
Article Rating
Subscribe
Notify of
0 Comments
Opiniones Inline
Ver todos los comentarios
0
Me encantaría saber tu opinión, por favor, deja un comentariox
()
x