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.