Grive est un projet open source qui a pour but d’implémenter Client Google Drive pour des distribution GNU/Linux. Le code source de cette application est soumis au GPLv2.
Il vous sera possible avec cette application de synchroniser vos fichiers et répertoires que se soit de Google Drive vers votre serveur ou bien de votre serveur vers Google Drive et tout ça automatiquement si vous le souhaitez.
Le projet est amené à évoluer, vous trouverez le site en rapport avec l’application via ce lien.
LES PRE-REQUIS
Quelques pré-requis sont nécessaire pour l’installation de « grive », en voici la liste :
– Git
– Cmake
– Build-essential
– libgcrypt11-dev
– libjson0-dev
– libcurl4-openssl-dev
– libexpat1-dev
– libboost-filesystem-dev
– libboost-program-options-dev
– binutils-dev
TELECHARGEMENT DES SOURCES
Nous utilisons donc l’outil « Git » pour télécharger Grive
Rendez-vous maintenant dans le répertoire :
root@—————–:/# cd /usr/src/
Puis commencez le téléchargement :
root@—————–:/usr/src# git clone git://github.com/Grive/grive.git
Résultat :
root@—————–:/usr/src# git clone git://github.com/Grive/grive.git
Cloning into grive…
remote: Counting objects: 2591, done.
remote: Compressing objects: 100% (865/865), done.
remote: Total 2591 (delta 1713), reused 2555 (delta 1681)
Receiving objects: 100% (2591/2591), 750.79 KiB | 876 KiB/s, done.
Resolving deltas: 100% (1713/1713), done.
Le répertoire « grive » est automatiquement créé avec les sources d’installation.
VERIFICATION DE MISE A JOUR
Vérifiez que vous avez bien téléchargé la dernière version des sources.
Rendez vous dans le répertoire que vous venez de créer puis suivez ces instructions :
root@—————–:/# cd /usr/src/grive/
root@—————–:/usr/src/grive# cd ./grive
root@—————–:/usr/src/grive/grive# git pull origin master
Résultat :
root@—————–:/usr/src/grive/grive# git pull origin master
From git://github.com/Grive/grive
* branch master -> FETCH_HEAD
Already up-to-date.
INSTALLATION VIA CMAKE
Rendez vous cette fois-ci à la racine du répertoire des sources :
root@—————–:/usr/src/grive# cmake .
Resultat :
root@—————–:/usr/src/grive# cmake .
— The CXX compiler identification is GNU
— Check for working CXX compiler: /usr/bin/c++
— Check for working CXX compiler: /usr/bin/c++ — works
— Detecting CXX compiler ABI info
— Detecting CXX compiler ABI info – done
— Found libgcrypt: -lgcrypt
— Found JSON-C: /usr/lib/libjson.so
— Found CURL: /usr/lib/libcurl.so
— Found EXPAT: /usr/lib/libexpat.so
— Boost version: 1.42.0
— Found the following Boost libraries:
— program_options
— filesystem
— system
— Found libbfd: /usr/lib/libbfd.so
— Found libiberty: /usr/lib/libiberty.a
— Found ZLIB: /usr/include
— Configuring done
— Generating done
— Build files have been written to: /usr/src/grive
INSTALLATION VIA MAKE
Saisissez maintenant cette commande :
root@—————–:/usr/src/grive# make
Résultat :
[……..] [ 97%] Building CXX object libgrive/CMakeFiles/grive.dir/src/bfd/Debug.cc.oLinking CXX static library libgrive.a
[ 97%] Built target griveScanning dependencies of target grive_executable
[100%] Building CXX object grive/CMakeFiles/grive_executable.dir/src/main.cc.oLinking CXX executable grive
[100%] Built target grive_executable
CREATION DU REPERTOIRE GOOGLE DRIVE
Il est maintenant nécessaire de créer le répertoire qui contiendra les fichiers à uploader sur Google Drive.
root@—————–:/usr/src/grive# mkdir /home/Google Drive
COPIE DE L’EXECUTABLE
Pour le moment avec la version actuel de grive, afin que tous fonctionne correctement, vous devez copier les fichiers d’exécution Grive à la racine de votre répertoire Google Drive.
root@—————–:/usr/src/grive# cp ./grive/grive /home/GoogleDrive/
PREMIERE EXECUTION
Rendez vous dans le répertoire Google Drive.
root@—————–:/usr/src/grive# cd /home/GoogleDrive/
Exécutez la commande suivante avec le paramètre « -a ».
root@—————–:/home/GoogleDrive# ./grive -a
Lors de la première exécution, vous devez authentifier l’application avec votre compte google drive.
———————–
Please go to this URL and get an authentication code:
https://accounts.google.com/o/oauth2/auth?scope=https%3A%2F%2Fwww%2Egoogleapis%2Ecom%2Fauth%2Fuserinfo%2Eemail+https%3A%2F%2Fwww%2Egoogleapis%2Ecom%2Fauth%2Fuserinfo%2Eprofile+https%3A%2F%2Fdocs%2Egoogle%2Ecom%2Ffeeds%2F+https%3A%2F%2Fdocs%2Egoogleusercontent%2Ecom%2F+https%3A%2F%2Fspreadsheets%2Egoogle%2Ecom%2Ffeeds%2F&redirect_uri=urn:ietf:wg:oauth:2.0:oob&response_type=code&client_id=22314510474.apps.googleusercontent.com
———————–
Connectez vous via un navigateur à l’URL précedent, connectez vous à votre compte google.
Ensuite, cliquez sur « Autoriser l’accès.
Puis récupérez le code d’accès qui vous est donné.
Copiez donc le code d’accès au niveau de votre console comme ceci :
Please input the authentication code here:
———————————————————————————————————-
Reading local directories
Synchronizing folders
Reading remote server file list
Synchronizing files
sync ./grive doesn’t exist in server, uploading
Finished!
SYNCHRONISATION
Pour synchroniser à nouveau, il vous suffit de saisir une nouvelle fois la commande suivante :
root@—————–:/home/GoogleDrive# ./grive
Il est bien évidemment possible de créer une tache CRON afin d’automatiser la synchronisation.
Si vous souhaitez en cas de crash de l’application avoir une trace de log, utilisez le paramètre suivant :
./grive –l log.txt
Bjr
Avant de me lancer dans l’avanture : est-ce que cela fonctionne encore en aout 2014, car le post datant de 2012
Merci
Bonjour,
Cela fait environs 1 an que je n’utilise plus du tout google drive et grive du coup je ne peux pas assurer que la procédure fonctionne encore à 100%. L’outil a surement du évoluer depuis le temps. De mémoire, ce n’est pas très compliqué à mettre en place, je vous laisse tenter l’aventure :).
Bon courage.
Jérémy