rcloneの使い方
- dropboxがお金を払わないとまともに使えないので、rclone(マルチクラウドストレージクライアント)でgoogle driveに代替できる
- osによる挙動の違い
- macOSではfuseが不安定なので、Googleが提供するGUIクライアントを用いたほうがいい
- linuxでは安定して動作する
- 事前にGCPからOAuthのDesktop AppのクライアントIDとクライアントシークレットを取得しておく必要がある
インストール
osx
$ brew install rclone
ubuntu, debian
$ sudo apt install rclone
初期設定
rclone configname> <what you want>を入力Storage> driveを入力client_id>で OAuthのクライアントIDを入力client_secret>で OAuthのクライアントシークレットを入力scope> 1を入力root_folder_id>でenterservice_account_file>でentery/n> nを入力y/n> yを入力(リモートで実行している場合はコマンドとコードをコピペしてローカルで認証する)
各種コマンド
nameをdriveとしたとする
ls
$ rclone ls <name>:
copy
$ rclone copy <file> <name>:
mount
$ rclone mount <name>: <path-to-mount>
unmount
$ fusermount -uz <path-to-mount>
mount(gdrive)
$ rclone mount <name>: <path-to-mount> \
--vfs-cache-mode full \
--vfs-cache-max-size 10G \
--vfs-cache-max-age 24h
systemdサービスとして登録する
- 起動時に自動でmountするにはsystemdサービスとして登録する
/etc/systemd/system/rclone-<name>.serviceに以下を配置する
[Unit]
Description=rclone mount for <name>
After=network-online.target
Wants=network-online.target
[Service]
Type=notify
User=<user>
Group=<user>
ExecStart=/usr/bin/rclone mount <name>: <path-to-mount> \
--config=/home/<user>/.config/rclone/rclone.conf \
--vfs-cache-mode full \
--vfs-cache-max-size 10G \
--vfs-cache-max-age 24h
ExecStop=/bin/fusermount -u <path-to-mount>
Restart=on-failure
RestartSec=10
[Install]
WantedBy=multi-user.target
- 有効化と起動
$ sudo systemctl daemon-reload
$ sudo systemctl enable rclone-<name>
$ sudo systemctl start rclone-<name>