Rcloneのファイル同期入門
- Rcloneは、クラウドストレージ上のファイルを管理するためのコマンドラインプログラム。
- 70以上のクラウドストレージ製品をサポートし、S3オブジェクトストア、法人向け・個人向けファイルストレージサービス、標準転送プロトコルを含む。
rsync、cp、mv、mount、ls、ncdu、tree、rm、cat などのUnixコマンドの強力なクラウド版を提供し、シェルパイプライン対応や --dry-run の保護機能を含む、なじみのある構文を採用している。
Rcloneの機能
- ファイルのタイムスタンプを保持し、常にチェックサムを検証してデータを安全に管理する。
- 帯域幅が限られている場合や、接続が断続的な場合、あるいはクォータ制限のある転送でも、最後に正常送信されたファイルから再開できる。
- サーバー側転送を利用して可能な限りローカル帯域幅の使用を最小化し、ローカルディスクを使わずに別プロバイダー間で転送する。
- 暗号化、圧縮、チャンク化、ハッシュ化、結合を適用するために、ローカルおよびクラウドのファイルシステムをラップする仮想バックエンドを提供する。
- Windows、macOS、Linux、FreeBSDでローカル、クラウド、仮想ファイルシステムをディスクとしてマウントし、SFTP、HTTP、WebDAV、FTP、DLNA経由でそれらを提供できる。
Rcloneがサポートするプロバイダー
- 1Fichier、Amazon S3、Google Drive、Microsoft OneDrive など、さまざまなクラウドストレージプロバイダーをサポートする。
- WebDAVやS3といった標準プロトコルをベースにする多くの他プロバイダーも、そのまま利用できる。
Rcloneのユースケース
- クラウドストレージへのファイルのバックアップ(および暗号化)と、復元(および復号)を支援する。
- クラウドデータを別のクラウドサービスやローカルにミラーリングしたり、クラウドへデータを移行したり、クラウドストレージベンダー間で移動したりできる。
- さまざまなクラウドストレージをディスクとしてマウントし、クラウドストレージに保存されたデータを分析・集計できる。
GN⁺の見解
- Rcloneは、多様なクラウドストレージサービスとの互換性と強力なファイル管理機能により、「クラウドストレージのスイスアーミーナイフ」と呼べるほど有用。
- ユーザーがクラウドデータのバックアップ、同期、移行といった複雑な作業を、シンプルなコマンドライン操作で実行できる点が特に重要。
- オープンソースソフトウェアとして開発者コミュニティの支援を受けており、多様なユースケースに関する知見が豊富なサポートコミュニティを持つため、ユーザーにも開発者にも役立つ。
1件のコメント
Hacker Newsのコメント
rcloneへの愛着を語りつつ、寄付ページで妻に花を買うための寄付を呼びかけている内容が印象的だったと述べている。これでようやく rclone に専念できるようになってうれしいとも付け加えている。
rclone はクラウドストレージをローカルディスクとしてマウントでき、特に Kubernetes で便利だと述べている。フォルダ内のファイル数が多いと遅くなることはあるが、クラウドストレージをプロジェクトで簡単かつ迅速に活用できる方法だという。また、rclone はエンドツーエンド暗号化(end-to-end encryption)をサポートしており、マウントしたドライブに入れたものはすべて暗号化されて Dropbox フォルダなどに保存される。Dropbox のようなサービスはまだネイティブの e2e をサポートしていないため、この機能は有用だという。
rclone の
ncduコマンドがお気に入りの機能だと言及している。ほとんどのクラウドストレージプロバイダーは、フォルダやその下位フォルダが実際にどれだけ容量を使っているかを表示しないが、rclonencduはその問題を解決してくれるという。rclone を毎日使っており、sshfs の代わりに使うこともあれば、ホームサーバーのアーカイブ共有を rsync.net にプッシュしたり、家族の Google アカウントから写真をアーカイブに取り込んだりするなど、さまざまな用途で活用していると説明している。
バックアップ用途には Restic を見てみることを勧めており、Rclone と Restic は一緒にうまく動作すると述べている。
rclone のホームページが常にチェックサムを検証すると誇らしげに述べている点を高く評価している。クラウドストレージの選択肢間で同期する際には、チェックサム検証の重要性が高いと強調している。
rclone は多様なストレージバックエンドをサポートしており、
cryptバックエンドを通じてどのストレージバックエンドでも暗号化できると説明している。Proton Drive API をリバースエンジニアリングして Rclone 用プラグインを作った事例を面白い話として紹介している。現時点では、これが Linux で Proton Drive を使う唯一の方法だという。
rclone は非常に多くのユースケースで有用だと述べつつ、AWS SDK を使っていないため一部の
.aws/config設定を利用できないという制約があると指摘している。また、ドキュメントには保守されていない機能(キャッシュなど)や実験的機能に関する警告があるものの、具体的な制限が明記されていない点にも触れている。組み込みの Web GUI(実験的)と RcloneBrowser プロジェクトを見つけ、GUI が必要なときに便利だと述べている。