Introducción
Al trabajar en entornos industriales, a menudo hay que sincronizar los datos para mantenerlos actualizados en todo momento.
¡En este post, vamos a aprender a utilizar la herramienta Rsynctool, con la que podrás sincronizar todos tus datos locales y remotos con cualquier PLC! Vamos a utilizar un PLC industrial Raspberry.
Últimas publicaciones
Rsync
En estas entradas del blog, te mostramos cómo enviar archivos entre un PLC basado en Raspberry Pi y tu ordenador, Windows o Linux:
Rsync o 'remote sync' es una herramienta de copia de archivos rápida y extraordinariamente versátil. Puede copiar localmente, a/desde otro host a través de cualquier shell remoto, o a/desde un demonio rsync remoto.
Ofrece numerosas opciones que controlan todos los aspectos de su comportamiento y permiten una especificación muy flexible del conjunto de archivos que se van a copiar.
Además, es famoso por su algoritmo de transferencia delta, que reduce la cantidad de datos enviados por la red enviando sólo las diferencias entre los archivos de origen y los existentes en el destino.
Rsync se utiliza ampliamente para realizar copias de seguridad y réplicas, y como un comando de copia mejorado para el uso diario.
Synopsis
La synopsis, como cp, scp o ssh, es la misma:

Direcciones IP
Estas son las direcciones IP de nuestros dispositivos.
Por un lado, nuestro portátil basado en Linux tiene la dirección IP 10.10.10.60 para la interfaz Ethernet.
Por otro lado, el PLC industrial Raspberry Pi tiene la dirección IP 10.10.10.20 para la interfaz Ethernet.

De local a remoto
Basándonos en esto, vamos a hacer lo siguiente:
1. Crearemos una carpeta local con 10 archivos en nuestro portátil llamada testDir.
mkdir testDirtouch testDir/file{0..9}ls testDir/
Con el comando ls, listaremos los archivos de la carpeta y comprobaremos que se han creado correctamente.
2. Crearemos una carpeta en el Raspberry PLC llamado remDir, para poder enviar archivos de local a remoto. Con el comando ls, listaremos los archivos y comprobaremos que está vacío:
mkdir remDir
ls remDir
3. Ahora, para sincronizar los datos desde el directorio local al remoto, ejecutaremos el siguiente comando:
rsync -a testDir/ [email protected]:/home/pi/remDir
La opción -a es el modo de archivo. Equivale a -rlptoD:
-r --recursive: recourse into directories
-l --links: Copy symlinks as symlinks
-p --perms: Preserve permissions
-t --times: Preserve modification times
-o --owner: Preserve owner (super-user only)
-D: Preserve device files (super-user only) and special files.
De remoto a local
1. Vamos a crear un nuevo directorio en nuestro ordenador, llamado newDir:
mkdir newDir
ls newDir
2. Now, we are going to rsync from the remote host to the localhost.
rsync -a [email protected]:/home/pi/remDir/ newDir/
En este paso, vamos a enfatizar la marca / junto al remDir. En este ejemplo, veremos la diferencia.

Prueba
Ahora, escribe el siguiente comando:
man rsync
Y descubre todas las opciones disponibles en el comando rsync para que puedas optimizar tus copias de archivos.

