Clicky

Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo.

Cómo hacer backups en Google Drive con Rclone desde un servidor Linux (Parte I)

Rclone y Google Drive en Linux

Obtención de credenciales de API para Google Drive

Rclone es un programa de línea de comandos gratuito y de código abierto para administrar archivos en servicios de almacenamiento en la nube como Google Drive, Backblaze B2, Amazon S3 y muchos más.

La aplicación está escrita en el lenguaje de programación Go y su código fuente está alojado en GitHub. En este tutorial, aprenderemos a instalar Rclone en las distribuciones de Linux más utilizadas y a realizar operaciones básicas como copiar, sincronizar, mover y eliminar datos.

En el proceso, también vemos cómo obtener las credenciales de la API de Google Drive y cómo configurar un control remoto de Google Drive para Rclone.

En este tutorial aprenderás:

• Cómo instalar Rclone en algunas de las distribuciones de Linux más utilizadas
• Cómo obtener las credenciales de la API de Google Drive y configurar un Rclone remoto para Google Drive
• Cómo usar Rclone para gestionar datos en el almacenamiento en la nube

Obtención de credenciales de API para Google Drive

Para este tutorial, utilizaremos Google Drive como plataforma de pruebas de almacenamiento en la nube para Rclone. Si bien es posible usar las credenciales de API nativas de Google Drive de Rclone, estas se comparten entre todos los usuarios de Rclone y tienen un número limitado de consultas por segundo. Para garantizar la operatividad, podemos crear las nuestras.

Para obtener nuestras credenciales de Google Drive, accedemos a la consola de Google Cloud y añadimos un nuevo proyecto. Hacemos clic en el menú desplegable "Seleccionar un proyecto" y luego en "Nuevo proyecto":

seleccionar proyecto

seleccionar proyecto nuevo

Imagen: Crear un nuevo proyecto en Google Cloud Console

Necesitamos elegir un nombre para nuestro proyecto. Aquí simplemente usamos "rclone":

nombre del proyecto nuevo

Imagen: Elegir un nombre para el proyecto

Una vez listo, hacemos clic en el botón "Crear". El proyecto se creará con un ID aleatorio. Para seleccionar nuestro proyecto, volvemos a hacer clic en el menú desplegable "Seleccionar un proyecto". Esta vez, sin embargo, elegimos el proyecto que acabamos de crear:

seleccionar proyecto rclone

Imagen: Seleccionando nuestro proyecto

Como siguiente paso, necesitamos añadir la API de Google Drive a nuestro proyecto. Buscamos "API de Google Drive" y hacemos clic en el primer resultado:

Buscando la API de Google Drive

Imagen: Buscando la API de Google Drive

Una vez en la página de la API de Google Drive, activamos la API haciendo clic en el botón "Habilitar". Seremos redirigidos a la página de detalles del servicio API. En este punto, hacemos clic en "Credenciales" en el menú vertical izquierdo.

habilitar la API de Google Drive

credenciales de API de Google Drive

Imagen: Página de credenciales de la API

Ahora necesitamos configurar una pantalla de consentimiento para nuestro proyecto, por lo tanto hacemos clic en el botón “Configurar pantalla de consentimiento”:

pantalla de consentimiento

Imagen: Configurar la pantalla de consentimiento

Elegimos “Externo” como tipo de usuario y luego hacemos clic en el botón “Crear”:

Google Auth Plarfort externos

Imagen: Elegir el tipo de usuario de la aplicación

En la siguiente página, debemos proporcionar información sobre nuestra aplicación. Como mínimo, debemos introducir el nombre de la aplicación, un correo electrónico de soporte al usuario y la información de contacto del desarrollador. Cuando esté listo, hacemos clic en "Guardar y continuar".

A continuación, debemos seleccionar los permisos que asignaremos a nuestra aplicación. Estos son básicamente los privilegios que tendrá la aplicación en el almacenamiento de Google Drive. Para añadir un permiso, hacemos clic en el botón "Añadir o eliminar permisos". Para asegurarnos de que Rclone pueda realizar todas las operaciones, seleccionamos ../auth-docs, ../auth-drive y ../auth/drive.metadata.readonly.

agregar permisos

Imagen: Selección de permisos

Si no ves estas opciones de permisos, copialas desde aquí:

https://www.googleapis.com/auth/docs
https://www.googleapis.com/auth/drive
https://www.googleapis.com/auth/drive.metadata.readonly

Y las pegas en personalizar permisos:

escoger permisos

Una vez hecho esto, hacemos clic en el botón "Actualizar" y luego en "Guardar y continuar".

Ahora necesitamos agregar nuestra cuenta como usuario de prueba. Hacemos clic en el botón "Agregar usuarios" e ingresamos la dirección de correo electrónico que queremos usar. Al finalizar, hacemos clic en el botón "Agregar" y, nuevamente, en "Guardar y continuar".

En la siguiente página, podremos ver el resumen de la configuración de la aplicación. En este punto, debemos hacer clic de nuevo en "Credenciales" en el menú vertical izquierdo. Una vez en la página de credenciales, hacemos clic en "Crear credenciales" y luego en "ID de cliente OAuth":

crear credenciales

Imagen: Generación de credenciales de API de OAuth

En la siguiente página, seleccionamos "Aplicación de escritorio" como tipo de aplicación. Podemos dejar el nombre del cliente generado automáticamente. Cuando esté listo, hacemos clic en el botón "Crear".

crear cliente oauth tipo

Imagen: Seleccionar tipo de app

Se generarán las credenciales de OAuth. Debemos anotarlas (de todas formas, podemos recuperarlas fácilmente más adelante desde la página "Credenciales").
crear cliente Oauth

Imagen: Nuestras credenciales de la API OAuth de Google Drive

Como último paso, hacemos clic en la pantalla de consentimiento de OAuth en el menú vertical izquierdo, luego en el botón “Publicar aplicación”:

publicar app

Imagen: Publicar la aplicación

En teoría, deberíamos preparar y enviar la aplicación a Google para su verificación; sin embargo, deberíamos poder usarla de todos modos. Ahora que tenemos nuestras credenciales de la API de Google Drive, podemos ver cómo configurar un control remoto Rclone. Esto lo explicamos la segunda parte del artículo.

 

Jesus_Caceres