[Debian 9] Utiliser Google Drive en ligne de commandes

Google Drive est connu de tous aujourd’hui – L’éditeur n’a pas créé d’outil pour pouvoir synchroniser votre Drive sur / dans votre Debian ; Grâce à Jedediah04 via Twitter, j’ai découvert l’outil qu’il faut !

Cet article n’est pas là pour débattre sur le pour ou contre l’utilisation de Google Drive – Il s’agit d’un tutoriel pour que vous puissiez utiliser votre « conteneur » sur votre Linux.

C’est bien dommage d’ailleurs que les devs chez Google n’aient pas « pensé » à créer ce genre d’outil. Puisqu’il n’y a pas d’outil officiel, il faut se rabattre sur un outil tiers. L’utilitaire en question est « GDrive« .
Pour vous le procurer, il faut aller sur le GitHub du développeur, dans la partie téléchargement – Lien direct

Attention, les affichages / ajouts / suppressions de fichiers se feront uniquement à la racine de votre Google Drive. Vous ne pourrez pas vous diriger dans l’arborescence de votre conteneur via l’utilitaire en ligne de commandes.

Ne sachant pas comment ouvrir des liens GitHub sous Debian en CLi, j’ai téléchargé le fichier sur une autre machine pour ensuite transférer en SFTP le fichier sur le linux concerné.

Téléchargement & Installation

Vous avez plusieurs versions, chacune correspond à une architecture différente : choisissez celle qui correspond à votre système – Dans la majorité des cas et pour l’exemple, il faut sélectionner « drive-linux-x64« .

L’installation de l’outil est simple :

sudo install drive-linux-x64 /usr/local/bin/drive

Toutefois, l’installation n’est pas totalement terminée : vous devez lancer une première fois « GDrive » pour créer le token d’authentification – dans votre shell, lancez la commande suivante :

drive

L’outil va alors vous afficher un lien pour vous rediriger vers Google Drive « online » : le lien hypertexte va vous permettre de générer un token d’authentification (Oauth) pour autoriser « GDrive » à communiquer et ajouter/modifier/supprimer des fichiers et des dossiers.
Naturellement, vous devez vous connecter avec le compte GMail où vous souhaitez stocker les fichiers.

Le site web va alors vous afficher un code unique – ce code est à copier/coller dans votre shell, puisque GDrive attend cet identifiant.

Après cette étape d’authentification, le logiciel est alors fonctionnel !


Exemples d’utilisation

Afficher la liste des fichiers récemment ajoutés/modifiés/utilisés/supprimés.

drive list |more

Plus il y a de fichiers dans la liste, plus le chargement sera long.

Télécharger un fichier de Google Drive via son ID

drive download --id ID_FICHIER

Exemple d’un ID de fichier : 0B4mbjXEHuk7vcnpWNml3RGlRZmc

Envoyer un fichier ou dossier sur votre Google Drive

drive upload --file NOM_FICHIER_OU_NOM_DOSSIER

Vous avez maintenant les cartes en main pour pouvoir exploiter votre Google Drive sur votre Debian en lignes de commandes !

Source
Webupd8.org

Julien H

Passionné depuis toujours par l'informatique, je transforme ma passion en expertise. J'utilise quotidiennement les outils et systèmes Microsoft. Je ne délaisse pas mon côté ouvert, notamment via l'utilisation des OS Debian et Archlinux. L'infosec m'ouvre les yeux sur les enjeux actuels et futurs de l'IT.

5 commentaires

  1. Merci pour ce tuto. Si j’ai bien compris sa permet d’avoir une copie des données de google drive sur un serveur debian. Mais j’ai pas compris ou il stock les données de mon drive. Je devrais avoir un chemin comme celui-ci. # user/gdrive/dossier. j’ai été dans /usr/local/bin/drive mais il s’agit que du fichier de configuration de drive. A moins que j’ai pas compris. Merci pour la réponse.

    1. Bonjour Guillaume : En effet, le fichier /usr/local/bin/drive est le fichier binaire pour lancer l’utilitaire ; Il ne faut donc pas le modifier pour pouvoir l’exploiter convenablement.
      Il est possible d’avoir une copie des fichiers de Google Drive sur Linux, tout comme il est possible d’envoyer ses documents de Linux vers Google Drive > Pour avoir un dossier de type « ~user/gdrive », il faut au préalable créer ce dossier > mkdir /home/[USER]/gdrive.
      Ensuite, il faut suivre la procédure de cet article pour créer le token d’authentification et effectuer par la suite la synchronisation avec les commandes drive download –id ID_FICHIER (télécharger un fichier depuis Google Drive) ou drive upload –file NOM_FICHIER_OU_NOM_DOSSIER (Télécharger un fichier vers Google Drive).

      Ainsi, il sera possible de télécharger depuis Google Drive ou vers Google Drive les fichiers / dossiers correspondants.
      🙂

  2. Bonjour Julien merci pour ta réponse 🙂 ok je comprend mieux. je pensais qu’il le créait automatiquement. maintenant que je l’ai installé effectivement si je lance la commande « drive list |more » je vois mes fichiers mais comment maintenant lui indiqué d’allé le stocker dans home/user/gdrive .

    D’ailleurs, j’aimerais t’apporter une précision sur ce que je souhaite faire :

    Le but étant de créer un dossier qui se synchroniser avec un cloud. Sa peut être dropbox ou google drive. Le but étant d’avoir les données sur mon serveur debian. en suite il me suffit de faire pointer samba. ce qui fait que si j’ajouter des dossiers ou fichiers il vont automatiquement de synchroniser avec le cloud. ce qui permet de soit les avoir en local ou alors sur tablette ou encore en me connectant sur une autre machine sur le web. l’idée est de créer un backup au cas ou si le serveur plante. en esperant qu’ils puissent fonctionner avec les droits communs.

    Guillaume

    1. Lorsque tu utilises « drive », il effectuera sa synchronisation dans le dossier où tu es actuellement – c’est pour cette raison qu’il faut se diriger dans le dossier où tu souhaites télécharger tes fichiers pour les avoir au bon endroit. Les fonctionnalités sont assez limitées, c’est vrai… mais ça a le mérite d’exister :-p

      Concernant ta problématique, voici une piste :
      Il faut créer le dossier local qui sera utilisé pour effectuer la synchronisation avec GDrive. Naturellement, tu devras mettre en place le partage et y attribuer les droits correspondant avec ton Samba.
      Lorsque c’est créé, tu peux effectuer une première synchronisation vers Google Drive pour être sûr que tout fonctionne comme il faut. Remonte-donc le dossier local entier, tu le verras s’afficher à la racine de ton Google Drive, sur « http://drive.google.com/« .
      Pour ta tablette, attend la synchronisation de ton Google Drive et tu devrais voir apparaître le dossier s’afficher.
      Pour automatiser la synchronisation pour sauvegarder les données (fichiers et dossiers) de ce dossier partagé, tu peux créer un script ./sh, qu’il faudra ensuite planifier à l’aide de Crontab (cron -e). Ainsi, une fois l
      J’utilise cette méthode pour une sauvegarde automatisée en ligne de base de données, ça fonctionne à merveille 😉

      La planification et la sauvegarde d’une BDD d’un serveur MySQL et synchronisé via GDrive ferra prochainement l’objet d’un article 🙂
      J’en profiterai également pour glisser ta situation en même temps, si tu m’y autorises 🙂

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Fermer
Fermer