メインコンテンツまでスキップ

Bisync:RcloneViewで実現する真の双方向クラウド同期

· 約9分
Tayson
Senior Engineer

標準のrclone Syncは一方向のみ——転送先を転送元に一致させます。Bisyncはさらに進んで、どちらの場所での変更も相手側に反映されます。場所Aにファイルを追加すると場所Bにも現れ、逆も同様です。RcloneViewでの設定方法を紹介します。

多くのクラウド同期シナリオは一方向です。ローカルマシンがクラウドにバックアップする、あるいはメインのクラウドがバックアップ用クラウドにミラーリングする、といった具合です。しかし、一部のワークフローでは真の双方向同期が必要になります。2人が編集する共有フォルダ、常に同期しておきたい仕事用マシンと自宅マシン、あるいは対等な立場として動作する2つのクラウドアカウントなどです。rcloneのbisyncコマンドはこれを実現し、RcloneViewを使えばコマンドラインなしで設定できます。

RcloneViewアプリのプレビュー

すべてのクラウドを一か所で管理・同期

RcloneViewはrcloneのクロスプラットフォームGUIです。フォルダを比較し、ファイルを転送・同期し、クリーンなビジュアルインターフェースでマルチクラウドのワークフローを自動化できます。

  • ワンクリック操作: コピー · 同期 · 比較
  • 信頼性の高い自動化のためのスケジューラーと履歴
  • Google Drive、OneDrive、Dropbox、S3、WebDAV、SFTPなどに対応
WindowsmacOSLinux
無料で始める →

コア機能は無料。Plusで自動化機能を利用可能。

SyncとBisyncの違い

動作rclone syncrclone bisync
方向一方向(転送元 → 転送先)双方向(両方向)
削除転送元にないファイルは転送先から削除削除を両方向に伝播
競合常に転送元が優先明示的な競合処理が必要
データ損失のリスク方向を誤ると発生し得る両側をチェックするためリスクが低い
複雑さシンプルより複雑で、慎重な設定が必要

Bisyncを使うべき場面

Bisyncを使うべき場合:

  • 2人以上の人やシステムが同じフォルダに変更を加える。
  • 常時オンラインとは限らない複数のデバイスでファイルを編集する。
  • 双方向の変更を伴う、2つのクラウドアカウントをアクティブなミラーとして保持している。

通常のSyncを使うべき場合:

  • 明確な主(転送元)と副(バックアップ/転送先)がある。
  • 一方のみが新しいファイルを作成し、もう一方は読み取り専用である。
  • シンプルさと予測可能性を優先したい。

RcloneViewでのBisyncの設定

Bisyncを使うには、以降の実行で変更を追跡できるようにするための基準状態を確立する、一度限りの初期化(resync)が必要です。

ステップ1 — 2つのリモートを追加する

両方の場所がRcloneViewでリモートとして設定されていることを確認してください。例:

  • gdrive-work:/Projects/Active/(Google Driveの仕事用アカウント)
  • onedrive-home:/Projects/Active/(OneDriveの自宅用アカウント)
Configure remotes for bisync in RcloneView

ステップ2 — 初回のresyncを実行する

最初のbisync実行では、基準状態を確立するために--resyncを使う必要があります。RcloneViewのターミナルで:

rclone bisync gdrive-work:/Projects/Active/ onedrive-home:/Projects/Active/ --resync --verbose

これにより、以降の実行での変更検出にbisyncが使用する基準状態ファイル(~/.cache/rclone/bisync/に保存)が作成されます。resyncは新しい方のファイルを各側にコピーすることで、両側を同一の状態にします。

ステップ3 — RcloneViewでBisyncジョブを作成する

  1. RcloneViewでジョブを開きます。
  2. カスタムコマンドを選択するか、ターミナルパネルを使用します。
  3. 継続的な実行用のbisyncコマンドを入力します。
rclone bisync gdrive-work:/Projects/Active/ onedrive-home:/Projects/Active/ --verbose --log-file /tmp/bisync.log
  1. ジョブとして保存し、1時間ごとまたは毎日実行されるようにスケジュールします。
Schedule bisync job in RcloneView

競合の処理

Bisyncは、実行の間に両方の場所でファイルが変更された場合に競合を検出します。デフォルトでは、rclone bisyncはこれらの競合にフラグを立て、どちらのバージョンも上書きしません。

--conflict-resolve newerを追加すると、新しい方のファイルを自動的に優先します。

rclone bisync path1 path2 --conflict-resolve newer

または、大きい方のファイルを優先する--conflict-resolve larger(ドキュメントが増大していくようなシナリオに有用)を使用できます。

自動的に解決されなかった競合ファイルは、.conflictという接尾辞を付けてリネームされ、両方のバージョンが保持されます。

よく使われるBisyncフラグ

フラグ目的
--resync基準状態を初期化または再確立する(一度だけ使用)
--conflict-resolve newer新しい方のファイルを優先して競合を自動解決する
--filters-file /path/to/filters含める/除外するルールを適用する
--max-delete 1010件を超えるファイルが削除される場合は中止する(安全対策)
--dry-run実際には何もせず、変更内容をプレビューする
--verboseデバッグ用の詳細な出力

--max-deleteフラグは特に重要です。設定ミスによってbisyncが大量のファイルを誤って削除してしまうのを防ぎます。

Bisync実行の監視

各実行後、RcloneViewのジョブ履歴でbisyncの出力を確認してください。

Monitor bisync results in RcloneView

正常なbisync実行では、以下が表示されます。

  • path1からpath2にコピーされたファイル
  • path2からpath1にコピーされたファイル
  • 検出された競合とその解決方法
  • 合計時間と転送統計

Bisyncの制限事項

  • 同一ファイルへの同時編集には適していません — bisyncはリアルタイムではなく、実行と実行の間を比較します。
  • 削除の伝播は危険な場合があります — 一方で削除されたファイルは、次回の実行後にもう一方でも削除されます。
  • 実行間で安定した状態が必要です — 実行が途中で失敗した場合は、--resyncを使って基準状態を再構築してください。
  • 大規模なパスでは処理が遅くなります — 基準状態の比較は、実行のたびに両方の場所を完全にスキャンします。

はじめかた

  1. rcloneview.comからRcloneViewをダウンロードします。
  2. RcloneViewで両方のリモートを設定します。
  3. RcloneViewのターミナルから初回の--resyncを実行し、基準状態を確立します。
  4. 継続的な同期のために定期的なbisync実行をスケジュールします。

Bisyncは、ローカルディスク、クラウドプロバイダー、NAS共有など、rcloneがサポートするあらゆるリモートのペアに真の双方向同期をもたらします。


関連ガイド:

対応クラウドプロバイダー

Local Files
WebDAV
FTP
SFTP
HTTP
SMB / CIFS
Google Drive
Google Photos
Google Cloud Storage
OneDrive
Dropbox
Box
MS Azure Blob
MS File Storage
S3 Compatible
Amazon S3
pCloud
Wasabi
Mega
Backblaze B2
Cloudflare R2
Alibaba OSS
Ceph
Swift (OpenStack)
IBM Cloud Object Storage
Oracle Cloud Object Storage
IDrive e2
MinIO
Storj
DigitalOcean Spaces