• 作成:

google driveをlinuxで利用した話

  • dropboxからgoogle driveに移行した
  • grive2がdaemon機能をもたないのでやっつけスクリプトを書いた

背景

google photosが便利そうなのでdropboxに写真アップロードする方法から移行したかった. ついでにファイル同期機能もgoogle driveに移行してdropboxを使うのをやめた.

grive2

google driveには公式linuxクライアントがないので, vitalif/grive2: Google Drive client with support for new Drive REST API and partial syncを利用する.

gentooならportageにパッケージがある. 設定方法はヘルプ通りにすれば簡単.

これでついでにgoogle photosとも同期できる.

portageのuseフラグ

net-misc/grive-0.5.1_pre20160706はcurlがgnutlsを使うことを要求する. package.useにそれを記述する必要がある.dev-python/pycurlも弄る必要があることに少しの間気が付かなかったのでメモ.

# required by net-misc/grive-0.5.1_pre20160706
net-misc/curl curl_ssl_gnutls -curl_ssl_nss -curl_ssl_openssl
dev-python/pycurl curl_ssl_gnutls -curl_ssl_nss -curl_ssl_openssl

daemon化

griveは起動して同期する機能しか持たない. ファイルを変更したらいちいち起動し直す必要がある. これでは面倒くさい.

なのでそれを解決するやっつけsystemdスクリプトを書いた.

rvoicilas/inotify-tools: inotify-tools is a C library and a set of command-line programs for Linux providing a simple interface to inotify.が必要.

これをuserが要求する場所に置いてsystemdで有効化. 自分の場合は/home/ncaq/.config/systemd/user/default.target.wants/grive.serviceにシンボリックリンクが貼られている.

やっつけだが, 自分の環境では問題なく動いている.