Installing grive on Debian for Google Drive Sync
Prerequesites:
apt-get install cmake gcc make build-essential libjson0-dev libcurl4-openssl-dev binutils binutils-dev libboost-dev libboost-filesystem-dev libboost-program-options-dev libboost-test-dev libboost-test libqt4-core libqt4-dev libqt4-dev-bin libqt4-gui qt4-dev-tools libgcrypt11 libgcrypt11-dev libyajl-dev yajl-tools libjson-c-dev libjson-c2 libjson0-dev git
Installation:
git clone git://github.com/Grive/grive.git
cd gdrive
mkdir build
cd build
cmake ../
make
mkdir grive/bgrive/doc
touch grive/bgrive/doc/grive.1
make install
The file /root/grive/bgrive/doc/grive.1 was missing in my case, so I've created a dummy file in order to finish the installation. I didn't figure out however why it was missing. As it's only the man page for grive, I considered it less important.
Starting Synchronisation:
The first time, you need to authorize grive to access your Google Drive, there fore do:
/usr/local/bin/grive -a
And follow the instructions (you will have to log into your account with a browser, confirm that you want to allow grive to access your drive and copy paste the given code to the terminal, pretty easy).
Then start the synchronisation for example like this: /usr/local/bin/grive -p /home/<user>/<google-drive-folder>
Command line options
Short option | Long option | Description |
---|---|---|
-h | –help | Produce help message |
-v | –version | Display Grive version |
-a | –auth | Request authorization token |
-p arg | –path arg | Root directory to sync |
-s arg | –dir arg | Single subdirectory to sync (remembered for next runs) |
-V | –verbose | Verbose mode. Enable more messages than normal. |
–log-http arg | Log all HTTP responses in this file for debugging. | |
–new-rev | Create new revisions in server for updated files. | |
-d | –debug | Enable debug level messages. Implies -v. |
-l arg | –log arg | Set log output filename. |
-f | –force | Force grive to always download a file from Google Drive instead of uploading it. |
–dry-run | Only detect which files need to be uploaded/downloaded, without actually performing them. | |
–ignore arg | Perl RegExp to ignore files (matched against relative paths, remembered for next runs). |