Rclone RC APIでRcloneViewをリモート制御する
rcloneに組み込まれたRC APIを使い、RcloneViewとシームレスに統合されたクラウドストレージ操作のプログラマブルな制御を実現しましょう。
Rcloneには、RC(Remote Control)インターフェースと呼ばれる強力なREST APIが同梱されています。このAPIはrcloneのほぼすべての操作をHTTPエンドポイントとして公開しており、任意のプログラミング言語や自動化ツールから転送の開始、進捗の監視、マウントの管理、統計情報の取得を行うことができます。RcloneViewはGUI操作の裏側でこの同じRC APIを利用しているため、インターフェースでできることはすべてプログラム的にも実行できます。このガイドでは、RC APIの基礎から高度な自動化までを解説し、クラウドストレージ操作を中心としたカスタム連携、監視ダッシュボード、自動化ワークフローを構築するための知識を提供します。

すべてのクラウドを一か所で管理・同期
RcloneViewはrcloneのクロスプラットフォームGUIです。フォルダを比較し、ファイルを転送・同期し、クリーンなビジュアルインターフェースでマルチクラウドのワークフローを自動化できます。
- ワンクリック操作: コピー · 同期 · 比較
- 信頼性の高い自動化のためのスケジューラーと履歴
- Google Drive、OneDrive、Dropbox、S3、WebDAV、SFTPなどに対応
コア機能は無料。Plusで自動化機能を利用可能。
Rclone RCアーキテクチャを理解する
rclone RC APIは、rcloneプロセス内に組み込まれたHTTPサーバーとして動作するJSONベースのREST APIです。--rcフラグを付けてrcloneを起動するか、rclone rcdコマンドを使用すると、ポート(デフォルトは5572)が開かれ、HTTPリクエストを待ち受けます。
RcloneViewがRC APIをどう利用しているか:
RcloneViewはこのRCインターフェースのみを通じてrcloneと通信します。GUIで同期を開始したり、ディレクトリを閲覧したり、転送の進捗を確認したりするためにボタンをクリックすると、RcloneViewは裏側でrclone RC APIにHTTPリクエストを送信しています。このアーキテクチャにより、以下のことが可能になります。
- RcloneViewはリモートマシン上で動作しているrcloneインスタンスを制御できる
- 複数のクライアントが同じrcloneインスタンスに接続できる
- すべての操作はステートレスであり、自動化が可能
- GUIとプログラムからのアクセスは同じ基盤メカニズムを使用する
組み込み型と外部rcloneの違い:
組み込みモードでは、RcloneViewが独自のrcloneプロセスを起動し、RC接続を自動的に管理します。外部モードでは、rcloneを別途起動し、RcloneViewをそれに接続させます。外部モードは、NASやクラウドサーバー上で稼働しているrcloneインスタンスを制御するようなリモート管理シナリオにおいて不可欠です。
RCデーモンを起動する
RC APIを使用するには、RCインターフェースを有効にしたrcloneインスタンスを稼働させる必要があります。
基本的な起動方法:
rclone rcd --rc-addr :5572
これにより、認証なしですべてのインターフェースのポート5572でRCデーモンが待ち受け状態になります。これはローカル開発用途にのみ適しています。
認証付き起動(推奨):
rclone rcd --rc-addr :5572 --rc-user admin --rc-pass your-secure-password
TLS暗号化を使用:
rclone rcd --rc-addr :5572 \
--rc-user admin \
--rc-pass your-secure-password \
--rc-cert /path/to/cert.pem \
--rc-key /path/to/key.pem
Web GUIを有効化:
rclone rcd --rc-addr :5572 --rc-web-gui --rc-user admin --rc-pass your-secure-password
主な起動フラグ:
| フラグ | 目的 |
|---|---|
--rc-addr | 待ち受けるアドレスとポート |
--rc-user / --rc-pass | Basic認証の認証情報 |
--rc-allow-origin | ブラウザベースアクセス用のCORSオリジン |
--rc-serve | RC API経由でリモートオブジェクトを配信 |
--rc-no-auth | 認証を無効化(ローカル用途のみ) |
--rc-cert / --rc-key | TLS証明書と秘密鍵 |
デーモンが動作していることを確認する:
curl http://localhost:5572/rc/noop
# Expected response: {}
認証が有効な場合:
curl -u admin:your-secure-password http://localhost:5572/rc/noop
主要なAPIエンドポイント
RC APIはカテゴリ別に整理された数十のエンドポイントを提供します。ここでは日常的に使う最も重要なものを紹介します。
コア操作:
# Get rclone version and build info
curl -X POST http://localhost:5572/core/version
# Get current transfer statistics
curl -X POST http://localhost:5572/core/stats
# Get memory statistics
curl -X POST http://localhost:5572/core/memstats
# Trigger garbage collection
curl -X POST http://localhost:5572/core/gc
# Gracefully shut down rclone
curl -X POST http://localhost:5572/core/quit
同期・コピー操作:
# Copy files from source to destination
curl -X POST http://localhost:5572/sync/copy \
-H "Content-Type: application/json" \
-d '{"srcFs": "gdrive:/Documents", "dstFs": "s3:my-bucket/documents"}'
# Sync (mirror) source to destination
curl -X POST http://localhost:5572/sync/sync \
-H "Content-Type: application/json" \
-d '{"srcFs": "gdrive:/Photos", "dstFs": "b2:photo-backup"}'
# Move files from source to destination
curl -X POST http://localhost:5572/sync/move \
-H "Content-Type: application/json" \
-d '{"srcFs": "local:/tmp/uploads", "dstFs": "s3:incoming-bucket"}'