GNU/Linux >> Tutoriales Linux >  >> Debian

Cli Google Drive Client Grive2:Cómo habilitar la sincronización automática

Grive2, un cliente gratuito de línea de comandos de código abierto de Google Drive para Linux que admite sincronización parcial, es muy popular entre los usuarios de Linux, pero muchos probablemente no saben que la herramienta es una solución integrada para sincronizar automáticamente Google Drive. - Archivos con una carpeta local.

La página del proyecto Grive2 GitHub se actualizó recientemente para contener instrucciones para activar una solución de sincronización automática :Sincronización programada (verifique los cambios en Google Drive cada 5 minutos y sincronice los cambios localmente) y sincronice en eventos de cambio de archivos locales (cargue automáticamente archivos nuevos y modificados desde el sistema de archivos local tan pronto como sucedan) con Google Drive usando innotify con systemd -Units.

Las unidades systemd y un script de sincronización están disponibles directamente en el repositorio de Grive2 y se instalan automáticamente cuando se instala la aplicación. No son nuevos (aunque hubo una solución reciente para manejar directorios con espacios en sus nombres), pero esto no se mencionó en la página del proyecto hasta hace poco, por lo que muchos usuarios pueden haberlo pasado por alto.

Gracias a esta funcionalidad, Grive2 puede ofrecer una experiencia cercana a la del cliente oficial de Google Drive (solo desde el punto de vista de la sincronización, ya que no hay integración con el administrador de archivos, etc.).

Sin embargo, la sincronización automática de Grive2 no es perfecta (pero debería ser suficiente para la mayoría de los usuarios) . Gracias a inotify (utilizado a través de un script bash), los cambios de archivos locales se cargan en Google Drive de inmediato, pero los archivos modificados en Google Drive no se descargan de inmediato en el sistema de archivos local porque Grive2 no puede detectar automáticamente cuándo se producen cambios en Google Drive. Para solucionar este problema, Grive2 utiliza un dispositivo de temporizador systemd para comprobar los cambios remotos (establecido en 5 minutos de forma predeterminada).

La página de inicio de Grive2 Wiki menciona que se puede implementar un modo daemon en el futuro para evitar ejecutar Grive2 varias veces para sincronizar archivos.

Grive 2 funciones

Grive2 es una bifurcación del cliente Grive Google Drive original para Linux. El proyecto original se abandonó, pero Vitaliy Filippov lo escindió con el nombre de Grive2 y agregó soporte para Drive REST API, soporte de sincronización parcial, entre otras cosas.

Las funciones de Grive 2 incluyen:

  • Sincronizar archivos desde/hacia Google Drive y una carpeta en el sistema de archivos local desde la línea de comandos
  • Soporte parcial/selectivo:puede excluir ciertos archivos y carpetas de la sincronización agregándolos al .griveignore Expediente. También puede sincronizar solo un subdirectorio grive -s subdir
  • --no-remote-new (solo descargue archivos que hayan sido modificados en Google Drive y que ya estén disponibles localmente) y --upload-only Modos (no descargar nada de Google Drive, solo subir cambios locales)
  • Crear nuevas revisiones en el servidor para archivos actualizados
  • Detección automática de reubicación/cambio de nombre
  • Sincronizar archivos compartidos (pero debe agregarlos explícitamente a su Google Drive mediante la interfaz web)
  • Opcionalmente, limite la velocidad de carga o descarga
  • Opcionalmente, muestra una barra de progreso ASCII al cargar o descargar archivos
  • Autenticación Auth2


Para ver todo lo que tiene que ofrecer, ejecute man grive después de la instalación.

La aplicación no admite documentos de Google ni enlaces simbólicos. Tampoco es compatible con la sincronización automática directa (continuamente esperando cambios en el sistema de archivos o Google Drive y cargando automáticamente los cambios), pero está disponible gracias al script intify y las unidades systemd incluidas con Grive 2 que mencioné al comienzo de el artículo.

Instala Grive2 y habilita la sincronización automática de archivos de Google Drive con una carpeta local

Puede encontrar información sobre la instalación de Grive2 en la página de instalación. Asegúrese de descargar el último código de git y no la última versión, ya que esta última es bastante antigua.

Las instrucciones incluyen pasos para crear un paquete Debian usted mismo (que puede usar en Debian, Ubuntu, Linux Mint, sistema operativo elemental y otras distribuciones de Linux basadas en DEB / Apt), aunque también puede descargar los binarios DEB de Grive2 para Ubuntu o Linux Mint desde aquí (También puede agregar el PPA si desea actualizaciones automáticas). Aunque la bifurcación se llama Grive2, el archivo binario todavía se llama grive , como el proyecto antiguo, no mantenido. Asegúrese de descargar la última versión de Grive2 para su versión de Ubuntu (puede ver la fecha para ver cuál es más reciente).

Ahora que Grive2 está instalado, podemos usarlo para sincronizar sus archivos de Google Drive en un directorio local y habilitar sincronizaciones programadas y funciones para sincronizar archivos cuando se realizan cambios.

1. Cree una carpeta en su directorio de inicio donde sincronizaremos los archivos de Google Drive.

La carpeta local de Google Drive DEBE crearse en el directorio de inicio de su usuario; de lo contrario, los scripts de sincronización automática no funcionarán. Te sugiero que crees una carpeta llamada GoogleDrive en su directorio de inicio, ya sea con un administrador de archivos o ingresando este comando:

mkdir ~/GoogleDrive

El artículo asume que has usado esto a partir de ahora. Así que asegúrese de cambiar esto en las instrucciones a continuación si elige un nombre de carpeta diferente.

2. Autorice Google Drive con Grive 2 y realice la primera sincronización.

La primera vez que ejecute Grive2, debe ejecutarlo con el -a Argumento para autorizarlo con tu Google Drive. Desde su directorio de inicio, use la línea de comando para navegar a la carpeta GoogleDrive recién creada y ejecute grive -a en esta carpeta:

cd ~/GoogleDrive
grive -a

Debería ver un enlace en la línea de comando. Debe copiar y pegar este enlace en un navegador web. Cuando se le solicite, acepte dar permiso a Grive2 para acceder a sus archivos de Google Drive y copie el código que se muestra en la página siguiente. De vuelta en la terminal donde ejecutó Grive2, pegue el código de autorización y presione el Enter Clave.

Grive ahora debería comenzar a sincronizar sus archivos de Google Drive con la carpeta de su sistema de archivos local.

3. Habilite la sincronización automática de Grive 2 (sincronizaciones programadas:busque cambios en Google Drive cada 5 minutos y sincronice con la carpeta local, y sincroniza en eventos de cambio de archivos locales:cargue automáticamente archivos nuevos y modificados desde el sistema de archivos local tan pronto como sucedan) desde Google Drive a una carpeta local.

Para activar e iniciar las unidades del sistema Grive2, use estos comandos (no los ejecute como root):

systemctl --user enable [email protected]$(systemd-escape GoogleDrive).timer
systemctl --user start [email protected]$(systemd-escape GoogleDrive).timer
systemctl --user enable [email protected]$(systemd-escape GoogleDrive).service
systemctl --user start [email protected]$(systemd-escape GoogleDrive).service


GoogleDrive de cada uno de estos 4 comandos representa el nombre de la carpeta de Google Drive que se creó en el paso 1 en su directorio de inicio. Si tiene un nombre de carpeta que no sea. han usado GoogleDrive , reemplázalo en estos comandos con el nombre que le diste a la carpeta. ¡La carpeta DEBE estar en su directorio de inicio, de lo contrario no funcionará!

Si desea sincronizar varias cuentas de Google Drive, puede repetir los pasos anteriores con un nombre de carpeta diferente (use una carpeta diferente para cada cuenta). Repite eso systemctl Comandos anteriores para cada carpeta que desea sincronizar automáticamente con Google Drive.

También puede probar el indicador Grive, un nuevo indicador Grive Gtk que utiliza Grive2 para sincronizar con Google Drive. Sin embargo, no parece ser compatible con la función de sincronización automática integrada en Grive2, sino que parece usar un temporizador simple para sincronizar archivos con Google Drive en un intervalo específico.

También te puede interesar:

  • Montar Google Drive en escritorios Xfce o MATE (Ubuntu, Linux Mint)
  • Cómo montar OneDrive en Linux usando Rclone (compatible con cuentas comerciales y personales)


Debian
  1. Cómo habilitar el inicio de sesión automático en Ubuntu 20.04 Focal Fossa

  2. Cómo programar copias de seguridad de archivos en Google Drive en Ubuntu

  3. Cómo acceder a Google Drive en Ubuntu 16.04 LTS

  4. Cómo usar Google Drive en Linux

  5. Grive2:un cliente de escritorio alternativo de Google Drive para Linux

Cómo habilitar/deshabilitar el inicio de sesión automático en Debian 10

Cómo habilitar el modo Picture in Picture en Google Chrome en Debian 10

Cómo acceder a Google Drive en Debian 10

Cómo deshabilitar/habilitar el bloqueo de pantalla automático en Linux Mint 20 a través de la CLI

Cómo instalar Google Drive en Ubuntu 20.04

Cómo instalar Google Drive Ocamlfuse en Ubuntu 16.04