google-drive-ocamlfuse 複数のGoogleDriveアカウントをubuntuで使う
- 2020.05.25
- Google Drive Linux Ubuntu 20.04 サービス
- googledrive, linux, ubuntu

Windows では、Google Drive Businessを利用しており、無制限のストレージを余すことなく堪能しているが、困ったことにUbuntuにはGoogle Driveクライアントが用意されていない。
WindowsだとGoogle Drive File Streamという、容量を圧迫せずに使える素晴らしいツールがあるのだが、それだけにLinux版がないのは惜しい。
そこで、PPAパッケージだがオンラインでGoogleDriveをマウントできる、google-drive-ocamlfuseを導入してみたので、その覚書を書いておきたい。
インストール
インストールはaptで行う。といっても標準リポジトリには入っていないので、リポジトリの追加から行う。なおPPAパッケージでソースが開示されていないので、万一の場合は自己責任で。
sudo add-apt-repository ppa:alessandro-strada/ppa sudo apt-get update sudo apt-get install google-drive-ocamlfuse
Google認証
続いてGoogleの認証を行う。引数なしで次のコマンドを実行すると、ブラウザが開き、認証を要求される。
認証が通ると認証情報は ~/.gdfuse 内に保存される。
google-drive-ocamlfuse
パーミッションを変更(共有する場合)
Googleドライブをマウントしたフォルダはパーミッションの概念がない。そのため、ほかのユーザーがアクセスできるように、/etc/fuse.conf内の、user_allow_otherのコメントを解除しておく必要がある。
sudo sed -i -e "s/^#user_allow_other$/user_allow_other/" /etc/fuse.conf
マウントする
ではマウントしてみよう。この例では、~/GDrive にリンクする。
mkdir ~/GDrive google-drive-ocamlfuse ~/GDrive
これで、~/GDriveを開くと、Googleドキュメントの中身が表示されるはず。なおnautilusで開くと重いので、あまりおすすめしない。
また共有フォルダにする場合は、-o allow_other オプションを付ける。
google-drive-ocamlfuse -o allow_other ~/GDrive
複数のアカウントをマウントする
複数のアカウントを使いたい場合は、-labelオプションを使って認証する。
google-drive-ocamfuse -label [任意のラベル名]
ラベルは接続情報を切り替えるのに使用する。指定しない場合、defaultとなる。~/.gdfuse/内に、ラベル名のフォルダが作成され、そこに認証情報が保存される。
またマウントする時も、-labelオプションを使用する。
google-drive-ocamlfuse -label [任意のラベル名] ~/GDrive
ファイル共有をするなら -o allow_otherも入れるとよい。
マウントするフォルダを指定する
マウントするフォルダを指定したいときは、~/.gdfuse/default/config を編集する。このパスはあくまでデフォルトであり、コピーしてマウント時に指定することもできる。
設定ファイルを開くとたくさんの項目が並んでいるので、その中のroot_folder=に、ブラウザでGoogleDriveを開いた時の、URLのIDを指定する。(最後の/から右側の文字列)
root_folder=[マウントしたいGoogleDriveのフォルダID]
共有ドライブをマウントしたい場合
ただし上記の方法では共有ドライブ(旧名 チームドライブ)はマウントできない。マウントしたい場合は、もう一つパラメータを設定し、共有ドライブのIDを記述する。
team_drive_id=[マウントしたい共有ドライブのID]
なお共有ドライブのIDは、共有ドライブのルートをブラウザで見たときの、最後の/から右側の部分となる。
共有ドライブのルートをそのままマウントしたい場合は、root_folderを指定する必要はない。
1つのアカウントで複数のフォルダをマウントする場合
例えば共有ドライブと自分のドライブ、また共有アイテムをマウントしたいなど、1回のマウントで済まない場合、1つの認証情報で複数のフォルダをマウントできる。
その場合、マウントしたいフォルダの数だけ~/.gdfuse/default/configを任意の場所にコピーし、それぞれ編集する。
そして次のようにマウントする。
google-drive-ocamfuse -config [設定ファイルのパス] [マウントするパス]
起動時に自動的にマウントするようにするには
google-drive-ocamlfuseによるマウントは、再起動時には行われない。そこで自動的にマウントするようにするには、次のように行う。
(調査中)
まずマウントするためのスクリプトファイルを作成。.startup.shとする。
次にそのスクリプトを実行する~/.cron.confを作成。
中身は次のようにする。
@reboot ~/startup.sh
設定ファイルをcronに登録する。
crontab ~/.cron.conf
これで次回起動時から勝手にマウントされる…はず。
google-drive-ocamfuse
-
前の記事
webサイトを作る 2020.03.22
-
次の記事
Ubuntu20.04でPythonの開発環境を作る 2020.05.26