趣旨
- 複数の端末で使用するファイルリソースを一元管理したい
- ssh 鍵とか gpg 鍵とか pasword-store とか
- バックアップを複数のオンラインストレージに分散したい
- 課金ユーザーなのでメインは Dropbox
- Google Drive もちょっと使う
- AWS S3 はほとんど使わない
- 同じインターフェイスで操作したい
- Rclone がよさそう
about Rclone
github.comGitHub - rclone/rclone: "rsync for cloud storage" - Google Drive, Amazon Drive, S3, Dropbox, Backblaze B2, One Drive, Swift, Hubic, Cloudfiles, Google Cloud Storage, Yandex Files
rsync
の再発見的な。
2012年から今に至るまでわりとアクティブに開発が進んでいるみたい。
導入
scoop の main バケットに登録されているのですぐに使える。
$ scoop info rclone Name: rclone Description: Sync files and directories to and from mulitple cloud / FTP / HTTP hosters. Version: 1.50.2 Website: https://rclone.org License: MIT (https://spdx.org/licenses/MIT.html) Manifest: C:\Users\y_okazawa\scoop\buckets\main\bucket\rclone.json Installed: C:\Users\y_okazawa\scoop\apps\rclone\1.50.2 Binaries: rclone.exe $ scoop install rclone 'rclone' (1.50.2) was installed successfully!
設定する
rclone config
コマンドで対話的に設定する。
rclone.orghttps://rclone.org/commands/rclone_config/
リファレンスはクラウドストレージごとに分かれているけど基本的にはほぼ共通している。
rclone.orghttps://rclone.org/dropbox/
rclone.orghttps://rclone.org/drive/
設定ファイルを共有する
rclone config file
コマンドを実行すると生成された設定ファイルのパスが表示される。
パスを変更する方法は見当たらなかった。決め打ちかな。
設定ファイルには認証トークンなどの秘密情報が平文で記載されているため、厳重に管理しないといけない。
他の端末をセットアップするときはインポートとかそういう操作は不要で、配置するだけだった。
$ rclone config file Configuration file is stored at: C:\Users\y_okazawa\.config\rclone\rclone.conf
使用する
この辺のコマンドが用意されている。
- copy
- sync
- move
- purge
- mkdir
- rmdir
- check
- ls
- lsd
- delete
リファレンスに詳しい使い方が書いてあるので特に困ることはなさそう。