Montar Google Drive localmente en Ubuntu como un sistema de archivos virtual

about montar Google Drive localmente

En el siguiente artículo vamos a ver dos formas de montar Google Drive localmente como un sistema de archivos virtual. Google Drive es uno de los proveedores de almacenamiento en la nube más populares del planeta.

De vez en cuando, algunos desarrolladores nos traen algunos clientes de Google Drive a los sistemas Gnu/Linux. En este post, veremos dos clientes no oficiales para nuestro sistema Ubuntu. Con estos clientes vamos a poder montar la unidad de Google localmente, como un sistema de archivos virtual. Esto nos va a dar la posibilidad de acceder a los archivos de nuestra unidad de manera muy sencilla.

Google-drive-ocamlfuse

Google-drive-ocamlfuse es un sistema de archivos FUSE para Google Drive que está escrito en OCaml. FUSE es un proyecto que permite a los usuarios crear sistemas de archivos virtuales. Google-drive-ocamlfuse nos va a permitir montar nuestro Google Drive en un sistema Gnu/Linux.

Cuenta con acceso de lectura / escritura a archivos y carpetas comunes, acceso de solo lectura a las hojas y diapositivas de Google. Nos va a proporcionar soporte para múltiples cuentas de Google Drive, manejo de archivos duplicados, acceso al directorio de papeleras y más.

Instalando google-drive-ocamlfuse

Para instalarlo en Ubuntu 18.04 escribiremos en la terminal (Ctrl+Alt+T):

sudo add-apt-repository ppa:alessandro-strada/ppa

sudo apt-get install google-drive-ocamlfuse

Uso

Una vez instalado, vamos a ejecutar el siguiente comando para iniciar la utilidad google-drive-ocamlfuse desde la terminal (Ctrl+Alt+T):

google-drive-ocamlfuse

Cuando se ejecuta por primera vez, la utilidad abrirá el navegador web y nos pedirá permiso para el acceso a nuestros archivos de Google Drive. Una vez otorgada la autorización, se crearán automáticamente todas las carpetas y los archivos de configuración necesarios.

pantalla de acceso para montar google drive con gdfuse

Después de la autenticación exitosa, veremos el siguiente mensaje en la terminal:

access token retrieved montar google drive localmente gdfuse

Ahora ya podemos cerrar el navegador web y crear un punto de montaje para nuestros archivos de Google Drive. Esto lo haremos escribiendo en la terminal (Ctrl+Alt+T)

mkdir ~/migoogledrive

Finalmente, montaremos nuestra unidad de google usando el comando:

google-drive-ocamlfuse ~/migoogledrive

Tras esto, ya podemos acceder a los archivos desde la Terminal o desde el administrador de archivos.

google drive gdfuse montada sistema archivos

Una vez que haya terminado, desmontaremos el sistema de archivos FUSE mediante el comando:

fusermount -u ~/migoogledrive

Si lo necesitamos, podremos consultar la ayuda con el comando:

google-drive-ocamlfuse --help

Además, podremos consultar la wiki oficial y el repositorio GitHub del proyecto para más detalles.

GCSF

GCSF es un sistema de archivos FUSE basado en Google Drive, escrito con el lenguaje de programación Rust. Usando GCSF, podremos montar nuestra unidad de Google como un sistema de archivos virtual local y acceder a los contenidos desde la Terminal o el administrador de archivos.

Si te preguntas en que se diferencia de otros proyectos FUSE como google-drive-ocamlfuse, el desarrollador de GCSF respondió a un comentario similar en Reddit: ‘GCSF tiende a ser más rápido enumerando archivos recursivamente o leyendo archivos de gran tamaño de Drive. La estrategia de almacenamiento en caché que utiliza también lleva a lecturas muy rápidas para los archivos que se han almacenado en caché, a costa de utilizar más memoria RAM’.

Instalando GCSF

Para instalarlo en Ubuntu, tendremos que asegurarnos de haber instalado Rust en nuestro sistema. Asegúrate también de que pkg-config y los paquetes de fuse estén instalados. Estos los encontraremos disponibles en los repositorios predeterminados de la mayoría de las distribuciones de Gnu/Linux. En Ubuntu y derivados, se pueden instalar utilizando el comando:

sudo apt install -y libfuse-dev pkg-config

Una vez que todas las dependencias estén cumplidas, ejecuta el siguiente comando para instalar GCSF:

cargo install gcsf

Uso

Primero, debemos autorizar nuestra unidad de Google. Para hacerlo ejecuta:

gcsf login entreunosyceros

Tendrás que especificar un nombre de sesión. Reemplaza entreunosyceros con tu propio nombre de sesión. Verás un resultado similar al siguiente con una URL para autorizar tu cuenta de Google Drive.

url login gcsf

Copia y pega la URL anterior en tu navegador y haz clic en permitir para dar permiso de acceso a los contenidos de tu Google Drive. Una vez autenticado, verás un resultado como el siguiente.

pantalla de acceso para montar google drive localmente con gcsf

GCSF creará un archivo de configuración en $XDG_CONFIG_HOME/gcsf/gcsf.toml, que generalmente se define como $HOME/.config/gcsf/gcsf.toml. Las credenciales se almacenan en el mismo directorio.

Continuamos creando un directorio para montar nuestro contenido de Google Drive:

mkdir ~/migoogledrivegcfs

Ahora editaremos el archivo /etc/fuse.conf:

sudo vi /etc/fuse.conf

Descomentaremos la siguiente línea para permitir que los usuarios no root especifiquen las opciones de montaje:

config fuse

user_allow_other

Guardamos y cerramos el archivo. Continuamos montando nuestra unidad de google con el comando:

unidad de google drive montada localmente con gcsf

gcsf mount ~/migoogledrivegcfs -s entreunosyceros

Reemplaza entreunosyceros con el nombre de tu sesión. Tras esto, ya puedes cerrar esta terminal.

Ahora, puedes ver las sesiones existentes con el comando:

gcsf list

gcsf list

Llegados a este punto, ya vamos a poder acceder a los contenidos de nuestra unidad de Google desde la Terminal o desde el administrador de archivos.

google drive gcsf montada como sistema de archivos

Si no sabes dónde está montada tu unidad de Google, utiliza el comando df:

df -h

Vamos a poder desmontar la unidad de google usando el comando:

fusermount -u ~/ migoogledrivegcfs

Podremos obtener más información de GCFS desde su repositorio de GitHub


3 comentarios, deja el tuyo

Deja tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.

  1.   Harold Collazos Urbano dijo

    Hola, buenas tardes, no se si pueda hacer preguntas por aquí pero bueno, aqui va:
    Estoy tratando de usar la opción de GCSF, ya hice todos los pasos, pero yo tengo mas de 300 GB en mi drive, es una cuenta coorporativa, y en el paso gcsf mount ~/migoogledrivegcfs -s entreunosyceros, veo que el comienza como a «sincronizar» todos los datos, y las lineas INFO gcsf::gcsf::drive_facade > Received page 250 containing 460 files comienzan a pasar muchísimas, esto termina despues de una hora mas o menos y empiezan estas otras lineas: INFO gcsf::gcsf::file_manager > Checking for changes and possibly applying them.
    El proceso lo inicié ayer tipo 3:00 pm y dejé el computador prendido toda lo noche y esta mañana había unas 10 lineas de esa última que compartí, y seguía trabajando. Hasta anoche cuando ingresaba a la carpeta migoogledrivegcfs no mostraba nada, (a esa hora iban como 3 lineas de INFO gcsf::gcsf::file_manager > Checking for changes and possibly applying them.), esta mañana ya veía los archivo en mi carpeta pero aun no habia terminado y como me tenia que ir y llevarme el portatil tuve que cancelar, con CRL+ C y en ese momento desaparecio todo lo que estaba en la carpeta, claramente porque interrumpí el montaje. Ahora pues acabo de empezar de nuevo y esta haciendo lo mismo.
    La pregunta es, siempre toca hacer este montaje o solo debo dejarlo terminar una sola vez? cuando termine el proceso completo, ¿todo queda guardado? es decir, si reinicio el equipo ya siempre que ingrese de nuevo la carpeta tendrá montados mis datos de Google Drive y sincronizará automáticamente?
    Gracias por la información.

  2.   Jorge LuparDev dijo

    Hola. Gracias por la guía.
    Google rechaza el inicio de sesión con un error 400(Bad request) porque la url está mal formada. ¿Le pasó a alguien más? ¿Sabe cómo solucionarlo?

    «400. That’s an error.

    The server cannot process the request because it is malformed. It should not be retried. That’s all we know.»

    Gracias

    1.    Jorge LuparDev dijo

      Esto es con gcsf, al hacer gcsf login nombreUsuario
      o también (nombreUsuario@gmail.com)