Sincronizando tus ficheros en las “nubes” con Linux

acceder a google drive desde la terminal

Que programas como Google Drive, a día de hoy, no cuenten con un cliente oficial para Linux debería estar penado.

Por fortuna existen alternativas (más o menos “pedestres”) para subir a cualquier servicio de alojamiento (Drive, OneDrive, Dropbox, …) en la web.

Quiero hablaros de RClone, en especial de su instalación (sin permisos de administración) y configuración como paso previo a otro artículo que espero resulte de utilidad a mis compañeros de profesión (hasta ahí puedo leer que decía Mayra Gómez Kemp 😉 )

Instalación

Como hemos comentado veremos cómo “instalar” el programa cuando no se tiene permisos de administración (por desgracia, algo muy habitual en los centros docentes de Andalucía con la distribución Guadalinex).

Si tienes permisos de administración (o cuentas con el lenguaje de programación “go”), te recomiendo seguir las instrucciones oficiales (si necesitas ayuda, deja un comentario y te echo una mano).

Si eres un usuario “pelao” tenemos la suerte de contar con la posibilidad de descargar binarios ya compilados para las distintas plataformas (Windows, Linux, OSX, …) y arquitecturas (i386, x86_64, ARM).

Bastará:

  1.  descargar la que que mejor se adapte a tus necesidades (en caso de Guadalinex, hablamos de Linux 386 32Bits… no preguntéis, please 🙂 )
  2. descomprimir en alguna carpeta donde no os lo vayan a borrar (recuerda que, si le pones un punto por delante al nombre de la carpeta, quedará oculta a aquellos con menos “conocimientos” de Linux)

A modo de ejemplo, a lo largo de toda la explicación, supondremos que lo hemos descomprimido en la carpeta .rclone (el punto delante para que no lo vea “nadie”) de mi cuenta de usuario (/home/jasvazquez) luego, la ruta completa a los ficheros descomprimidos será

/home/jasvazquez/.rclone

¡LISTO! Ya tenemos nuestro rclone preparado para ser utilizado. Bueno, primero debemos realizar la…

Configuración

Ahora nos toca indicar las cuentas de los servicios de alojamiento web (OneDrive, Drive, Dropbox, …) que deseamos utilizar con nuestro cliente rclone.

A modo de ejemplo (y porque me vendrá mejor en el próximo artículo), usaremos Google Drive como destino de nuestros ficheros.

Desde una terminal invocamos el programa en “modo configuración” con

/home/jasvazquez/.rclone/rclone config

Por comodidad (y para que no tengáis que estar haciendo “traducciones” a vuestro usuario), usemos mejor

~/.rclone/rclone config

A todos los efectos es lo mismo pero ¿a qué resulta más cómodo de escribir? (los que no sepáis poner ~ podéis usar Alt Gr+4 y pulsar la barra espaciadora 😉 )

Elegimos crear un nuevo destino remoto (opción “n”)

configurar cliente rclone

Le damos un nombre (para distinguirlo de otros que podamos crear y para indicar más adelante dónde queremos subir nuestros ficheros)

asignar nombres a conexiones remotas con rclone

Indicamos dónde vamos a alojar nuestros ficheros (en nuestro caso “3) Drive”)

conexión remota a google drive utilizando la terminal linux

Como te sugiere el programa, deja en blanco las opciones (pulsa simplemente enter sin escribir nada)

  • client_id
  • client_secret

y acepta que lleve a cabo la configuración automática (Use autoconfig? (Y)es )

cómo usar client id y client secret en nuestros scripts

Automáticamente, rclone abrirá una ventana en el navegador web que tengas definido por defecto para que le des permisos de acceso a tu cuenta de Google Drive

autorizar conexión script a google drive

La página web te indicará que todo ha ido correctamente (por tu “bien” espero que sea así XD ) y sólo te queda pulsar en la terminal la tecla “y” para aceptar la configuración realizada ( (Y)es this is OK )

conectando nuestro programa a google drive usando oauth

Probando si funciona

Aunque dejaré para el próximo artículo una aplicación práctica (que considero interesante y útil) de uso del comando rclone, probemos al menos que funciona, listando el contenido del “directorio raíz” de nuestro Google Drive ¿os parece?

Lanza desde la terminal un

~/.rclone/rclone lsd jasvazquez-drive:

donde:

  • ~ es para no tener que indicar la ruta a nuestra carpeta de usuario
  • lsd es el parámetro que incluye rclone para listar los directorios
  • jasvazquez-drive es el nombre que le di a mi cuenta de Google Drive cuando me preguntó (segundo paso) cómo quería llamar la cuenta que estaba configurando.
  • ¡OJO! Observa que hay dos puntos (:) detrás del nombre de la cuenta a utilizar (jasvazquez-drive)

En mi caso, la ejecución del comando anterior provocaría la siguiente salida

listar directorios de google drive remotamente desde una aplicación

Conclusión

Instalación y configuración del comando rclone como alternativa potente y sencilla de sincronizar (desde la terminal) nuestros directorios y ficheros locales con una amplia variedad de servicios de alojamiento online.

En el “próximo capítulo” os cuento cómo pienso utilizarlo y el motivo por el cual me he decidido a publicar este artículo (espero que podáis esperar 😉 )

Y tú…

  • ¿Conocías rclone?
  • ¿Utilizas algún programa similar?
  • ¿Esperas un “cliente oficial” de Google Drive para Linux?
  • ¿Conoces alguno que merezca realmente la pena?
  • ¿Para qué crees que podemos utilizar rclone en clase? 🙂

10 comentarios en “Sincronizando tus ficheros en las “nubes” con Linux

  1. Swicher dijo:

    Para Google Drive también esta Grive, no se que tan completo sea con respecto a RClone pero cuando me toco usarlo solo tuve que darle permiso en mi cuenta de Google y ya estaba listo para funcionar (aunque solo lo use para subir archivos sueltos pero creo que también permite sincronizar directorios).
    Si bien no lo he usado mucho, el único problema que me dio este programa fue que cuando se cortaba la conexión mientras subía un archivo grande, tenia que volver a empezar desde el principio (desconozco si es un bug del programa o si directamente Google no permite pausar el envió de archivos).

  2. rbf0069 dijo:

    Hola!

    Que hay que hacer para instalar rclone en una raspberry pi, si ya partes de que tienes una imagen, es que en las instrucciones hay varias cosas, y no sé por cual empezar desde la consola, y claro no se cual es la que hay que hacer y no quiero jugarmela y cagarla.

    • En una RPi siempre puedes hacer una imagen de la sd card antes de ponerte a experimentar (por si nos la cargamos restaurarla tal y como estaba 😉)
      No obstante, la versión que necesitas es la ARM32 bits.

      Cualquier duda sólo tienes que preguntar… veremos qué podemos hacer desde aquí 👍

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s