最終更新: 2026-07-09
rsync が 1996 年からフォルダーをミラーリングしてきたのには理由があります。双方向の同期、ローリングチェックサムでファイル内部の変化したバイトだけを転送する差分アルゴリズム、そしてあらゆるケースに対応する数十年分のフラグです。すでに SSH アクセスがあり rsync を知っているなら、これを上回るのは非常に困難です。
Relayium の sync コマンドはもっと狭い範囲——一方向の増分ミラー——だけをカバーしますが、rsync が前提とする一つのステップ、SSH のセットアップを省きます。すでにある SSH の上で動かすこともできますし、SSH サーバーなしで2台のマシンを直接つなぐこともできます。本記事はこの2つを正直に比較します。sync は rsync の完全な代替ではなく、FAQ でもそれをはっきり述べます。
rsync は双方向です——どちらの側もソースになれます——そして差分転送アルゴリズムはローリングチェックサムでファイルのブロックを比較するため、巨大なファイルへの小さな編集でも、変化したブロックだけを送り、ファイル全体を再送しません。それに加えて数十年分のフラグ(--exclude、ハードリンクスナップショット用の --link-dest、圧縮、帯域制限など)が、多くの用途に適した道具にしています。
また、どこにでもあります。ほとんどの Linux と macOS には標準で入っており、すでに設定済みであろう SSH 接続の上で動きます。これらはどれも Relayium sync が置き換えようとしているものではありません。
relayium sync <ソース...> <宛先> [--delete] [--watch] は一方向の増分ミラーです。各ファイルのサイズと更新時刻を比較し、すでに一致するものはスキップし、残りを送ります。
2つの転送方式で動きます。user@host:/dest を指定すると SSH 経由で動きますが——リモートにあらかじめ relayium がインストールされている必要があります。push と違い、sync に tar フォールバックはありません。代わりに relayium://host[:port] を指定すると SSH を完全に省けます。固定された TLS 1.3 接続で、相手のマシンで動く relayium serve リスナーに直接つながり、そのマシンのフィンガープリントで認証されます(一度承認すれば以後は記憶されます)。この2つ目の経路こそが本当の利点です。sshd の設定も SSH 鍵の管理も不要で、relayium がインストールされた2台のマシンと、間で開いたポートさえあればよいのです。
relayium sync ./photos user@host:/backup/photos # over SSH
relayium sync ./photos relayium://203.0.113.9:9031 # daemon direct, no SSH
既定では sync は追加と更新だけを行い、自分から何かを削除することはありません。削除もミラーするには --delete を渡しますが、受信側は明示的に許可する必要があります。relayium serve --allow-delete で動いていなければなりません。そうでなければ削除要求は拒否され、黙って無視されるのではなく送信側に報告されます。
継続的に変化するフォルダーには、--watch を付けると sync は最初のパスの後も動き続け、ソース配下でファイルが変化するたびに再ミラーします——これに相当する機能は rsync には組み込まれておらず、通常は cron ジョブや lsyncd のようなラッパーに頼ることになります。
relayium serve --dir /backup --port 9031 --allow-delete
relayium sync ./photos relayium://203.0.113.9:9031 --delete --watch
各ファイルは SHA-256 ハッシュで端から端まで検証され、途中で切れた転送はディスク上にすでにあるバイトオフセットから再開します。やり直しません——これは rsync の再開と同じ理由で役に立ちます。
再開が何でないかをはっきりさせておきます。rsync の差分アルゴリズムではありません。ファイルがすでに完全に存在していても、サイズやタイムスタンプが異なれば、sync は内部の変化したブロックを差分比較するのではなく、ファイル全体を再送します。頻繁に少しずつ変化する巨大な1ファイルについては、rsync の差分転送の方が転送量は少なくなります。sync が扱うのも通常ファイルだけです——シンボリックリンクと特殊ファイルはスキップされるので、それらに依存する場合は別途対応が必要です。
双方向の同期が必要なとき、すでに SSH が設定済みで別のデーモンを動かしたくないとき、きめ細かい制御(除外、フィルター、ハードリンクスナップショット、帯域制限、圧縮)が必要なとき、あるいは1つのファイルが頻繁に少しずつ変化して差分転送が実質的に帯域を節約するときは、rsync を選んでください。Relayium sync はそのどれもカバーしようとしていません。
なりません。一方向のミラーしか行わず、rsync のようなブロック単位の差分アルゴリズムもありません——サイズやタイムスタンプが変わったファイルは丸ごと再送され、フラグの数も rsync よりずっと少ないです。双方向の同期やきめ細かいフィルター制御が必要な場合、あるいは rsync の成熟したエコシステムに頼りたい場合は、rsync の方が今も優れた道具です。
いいえ。デーモン直結(relayium://host:port)は SSH を完全に省きます。固定された TLS 接続で、受信側のフィンガープリントによって認証され、一度承認すれば以後は記憶されます。SSH 経由(user@host:path)を選ぶこともできますが、リモートに relayium がインストールされている必要があり、push と違って sync に tar フォールバックはありません。
--delete を渡し、かつ受信側の serve が --allow-delete で起動されている場合だけです。そうでなければ削除要求は拒否され、黙って無視されるのではなく送信側に報告されます。
できます。--watch を付けてください。最初のミラーが終わった後も sync は動き続け、ソース配下でファイルが変化するたびに(デバウンスしつつ)再ミラーします。
はい。Relayium CLI は完全に無料で、sync を含めどのモードもアカウントは不要です。
自分の2台のマシンの間でフォルダーをミラーリングしましょう——SSH サーバーは不要です。
CLI を入手する