rclone: sincroniza ficheros a S3 desde la terminal
Rclone es una herramienta muy útil cuando quieres sincronizar datos a proveedores cloud, como S3, desde tu ordenador (o servidor). Es algo parecido a rsync
para SSH.
Recientemente utilizo mucho el tomar notas utilizando ficheros Markdown y la herramienta Obsidian (te lo cuento en mi último post). Investigando para crear copias de seguridad, he llegado a la conclusión que la forma más sencilla es subir estos ficheros a algún proveedor con una API compatible con AWS S3.
De las diferentes alternativas, he elegido Cloudflare R2 ya que es algo más bárato que AWS S3 y me apetece probarlo.
Pensando en cómo subir los ficheros, he descubierto rclone
, una herramienta para sincronizar datos a múltiples proveedores cloud. Puedes ver toda la documentación en su página web.
La instalación es muy sencilla, si utilizas MacOS y brew
:
brew install rclone
Una vez instalado, tienes que editar el siguiente fichero para configurar correctamente los backends ~/.config/rclone/rclone.conf
.
El contenido del fichero será el siguiente:
[backend_name]
type = s3
provider = Cloudflare
access_key_id = abcd
secret_access_key = 1234
endpoint = https://<id>.r2.cloudflarestorage.com
acl = private
Hay diferentes comandos para sincronizar datos, como el comando copy
que sube todos los ficheros o el comando sync
que mantiene el origen y el destino idénticos (eliminando datos).
Un ejemplo de cómo sincronizar un directorio:
rclone sync /path/to/folder backend_name:<bucket>/<folder>
Ahora mismo el comando lo lanzo mediante un script que ejecuto manualmente. Iré explorando neuvas formas para contarte cómo lo resuelvo finalmente, pero al menos, ya tengo un backup.
Si te ha resultado útil este artículo agradecería si te suscribes a mi newsletter. Recibirás contenido exclusivo de calidad y también me ayudarás enormemente. Cada suscripción apoya el trabajo que realizo y me permite conocer mejor los temas que te interesan, de forma que puedo mejorar los conocimientos que comparto contigo.