Linux MintでのGoogle Drive (2)
今回のタイトルに(2)とあるのは(1)があるからで、それはLinux Mintを使っていてGoogle Driveへのアクセス方法を変更せざるを得なかった時の記事(*1)です。内容は、最初に「google-drive-ocamlfuse」を使っていたものの管理者権限でしか使用できなくなり、原因が究明できずに「GNOMEコントロールセンター及びGNOMEオンラインアカウント」に変更した、というものでした。ところが、一年近く経ってまたもや使用不能に陥ってしまったので、今回はその対処の経緯です。
いつものようにGoogle Driveのフォルダをクリックすると、アクセスが拒否されます。
これは以前にもあって、認証情報の期限切れです。
ここでサインインするとブラウザ上での認証画面になるはずが、こんなんが出ました。
前回はちゃんとサインイン後に認証されて再使用可能になったですけどねぇ…
原因を究明すべく、"401"、"Error:delete_client"、"The OAuth client was deleted"で検索したところ、日本語のページはほとんど無くて英語のユーザフォーラムに僅かに「Google Drive API」での対処が書かれているのを見つけました。それに従ってやり始めたものの、APIを有効にしろだのプロジェクトを作れだので、なんか違う気がしてきた…
ここにきて、原因究明より他の方法を探した方が早そうなので無料のものが無いものかと検索したところ、「grive」について書いたサイトがいくつかあったので試すことにしたのです。
導入から運用までの手順は以下のとおり。
■インストールは端末から以下を順に入力。
$ sudo add-apt-repository ppa:nilarimogard/webupd8
$ sudo apt-get update
$ sudo apt-get install grive
■パソコン側のgrive用フォルダ(名前は任意)を作成して移動。
$ mkdir -p ~/GoogleDrive
$ cd ~/GoogleDrive
■griveの設定
$ grive -a
ここで長〜い文字列のURLが表示されるので右クリックして「リンクを開く」を選択する。
ブラウザ上で「griveが次の許可をリクエストしています」のメッセージが表示されるのに対し「許可」を押下。
すると枠で囲われたコードが表示されるのでコピー。
端末に戻り、貼り付けてから実行すると同期が行われる。
■確認
作成したgrive用フォルダを開いて、同期されていることを確認出来たら完了。
「GNOME〜」ではリモートのファイルを直接操作していたけれど、griveではローカルに保存しておいて新規追加・削除・内容修正などの変更の都度同期を取る方式です。同じ方式のWindowsの場合は自動で同期されるけれど、griveでは手動での操作が必要になります。
■同期方法はgrive用フォルダ内でgriveを実行。
$ cd ~/GoogleDrive
$ grive
頻繁に使うとなると、その度に端末を起動してコマンドを入力するのが面倒なのでシェルを作成しました。
これで今までどりにGoogle DriveがLinuxでも使えるようになって一安心。
griveにはgrive-toolsとかgrive2・3とかあるようだけど、やっていることは同じ。前回も書いたようにGoogleがLinuxについても正式に対応してくれればいいんですけど、そうしない理由があるのでしょう。ただ、そうなると有償でツールを提供しているところは困るだろうけど…。
*1) 冒頭の(1)に相当する記事はこちら。
⇒2017.11.14Linux MintでのGoogle Drive
《余談》
事の発端は一週間前に起きたこと。この記事の下書きが済んでいざサーバにアップしようとした際に念のため確認したら、Googleのサインインが正常に機能していました()。障害は一時的なものだったんですねぇ。
結局、ブックマークにはローカルとリモートの二つのGoogleDriveが並ぶことになったけれど、どちらかに不具合があった際のフェイルセーフということで良しとしましょう。