Resilio Sync

提供: ArchWiki
ナビゲーションに移動 検索に移動

関連記事

Resilio Sync (旧名: BitTorrent Sync (BTSync) は、BitTorrent ピアツーピア (P2P) プロトコルに依存する独自のファイル共有システムです。

すべてのファイルをアーカイブする中央サーバーを持たずに、デバイス自体間のピアツーピア接続を使用するため、データストレージや転送速度に制限はありません。ユーザーのデータは、ユーザーが同期することを選択したデバイスに排他的に保存されるため、オンラインになるには少なくとも 2 つのユーザーデバイス、つまり "ノード" が必要です。多くのデバイスが同時に接続されている場合、ファイルはメッシュネットワークトポロジでデバイス間で共有されます。

デバイス間のすべてのトラフィックは、一意のセッションキーを使用して、カウンターモードの AES-128 で暗号化されます。このキーは、それ自体が Base32 でエンコードされたランダムな 21 バイトのキーである 'シークレット' から派生します。'シークレット' を渡すことで、他のユーザーとファイルやフォルダーを共有できるようになります。デバイスが同期用のフォルダーを追加すると、シークレットが生成されます。今後、そのフォルダーを同期したいすべてのデバイスはシークレットキーを知っている必要があります。両方のデバイスに十分なディスク容量がある限り、同期には速度やサイズの制限はありません。

インストール

rslsyncAURAUR からインストール可能です。パッケージには rslsync デーモンを管理するための systemd サービスが含まれています。また、デフォルトの /etc/rslsync.conf が作成されます。systemctl を使って起動する前に、ファイルの中のログイン ID やパスワードなど、変更したい箇所を変更しておいてください。

また、'tar.gz' でパッケージングされた実行可能ファイルが 公式ウェブサイト から取得できます。以下のガイドは AUR から rslsync をインストールしていることを前提にしています。

使用方法

Resilio Sync の Linux クライアントは一般的な GUI を使用せず、代わりに localhost:8888 にアクセスできる WebUI サーバーをセットアップします。共有フォルダーは設定ファイルで静的に構成することもできますが、そうすると WebGUI が無効になります。

インストールしたら、まず ~/.config/rslsync/rslsync.conf に設定ファイルを作成する必要があります。#設定 を参照してください。storage_path ディレクトリも作成する必要があります。それが完了したら、ユーザー サービス rslsync を開始し、(ブート時に開始したい場合は) 起動/有効化 (つまり、--user フラグを使用) を実行します。

サービスは、コマンドを呼び出したユーザーとして実行されます。上記のコマンドは root として実行 されない ことに注意してください。root として実行すると、D-Bus が接続を拒否したことを示す不可解なエラーが発生する可能性があります。

ノート:
  • rslsync をユーザーで実行する場合、rslsync.conf ファイルと rslsync.pid ファイルが存在するディレクトリのパーティションが適切に設定されていることを確認してください。ユーザーがアクセスできない場所にファイルが置かれている場合、サービスの起動に失敗します。ユーザーのパーティションは正しいのに rslsync の起動に失敗する場合、マシンを再起動してください。
  • ヘッドレスサーバーで rslsync を実行する場合、lingering を有効にしてユーザーセッションの外でも rslsync が実行されるようにしてください: Systemd/ユーザー#systemd のユーザーインスタンスを自動起動を見てください。

rslsync.service をシステムユーザー (--user フラグなし) で実行することもできます:

このユーザーの設定は /etc/rslsync.conf にあり、メタデータはデフォルトで /var/lib/rslsync/ に保存されます。設定、特にユーザーとパスワードを確認する必要があります。以下を参照してください。

設定

以下のコマンドでサンプル設定ファイルを作成することができます:

# rslsync --dump-sample-config > ~/.config/rslsync/rslsync.conf

変更するべき設定は以下の通りです:

  • device_name
  • storage_path
  • webui/login
  • webui/password
ノート:
  • rslsyncstorage_path ディレクトリが存在しない場合でも自動的には作成してくれません。ディレクトリが存在しない場合、手動で作成するか設定ファイルの自動作成を使ってください。
  • storage_path の設定は、メタデータが保存される場所を定義します。同期するファイルではありません。同期するファイルの保存場所は WebGUI でフォルダごとに定義します。
  • 最近のバージョンの rslsync では webui/password_hash が上手く動作しません。代わりに webui/password でファイルを指定してください。

設定ファイルの自動作成

btsync-autoconfigAUR パッケージには systemd のユーザーサービス (btsync-autoconfig.service) が含まれており、有効にすると、ユーザーの btsync.service が起動したときにデフォルト値で設定ファイルを作成します。

ノート: btsync-autoconfigAUR によって設定ファイルが作成された場合、ポートの設定が違うかもしれません。btsync のユーザーインスタンスのポートは 8888 ではなく 7889 + $UID になります。$UID が "1000" なら、ポートは 8889 です。

インストールスクリプトはデフォルトで全てのユーザーでサービスを有効化します。以下のコマンドで無効化することができます:

# systemctl --global disable btsync-autoconfig.service

以下のコマンドを使うことで特定のユーザで有効化できます:

$ systemctl --user enable btsync-autoconfig.service

btsync-autoconfig.service~/.config/btsync/btsync.conf が存在しない場合、デフォルトで作成しますが、設定のデフォルト値は以下のようになります:

  • device_name: $USER@$HOSTNAME
  • storage_path: ~/.btsync
  • webui/login: $USER/password

また、スクリプトは storage_path ディレクトリも作成します。設定ファイルの作成とは別に行われます。

トラブルシューティング

ストレージパスが見つからない

サービスを起動しても WebUI にアクセスできない場合、systemctl --user status rslsync を実行して rslsync の状態を確認してください (システムインスタンスの場合は systemctl status rslsync を実行)。

よくあるエラーは Storage path specified in config file does not exist. です。mkdir ~/.rslsync を実行するか、storage_path の設定を変更することで簡単に解決できます。

特定のファイルやフォルダの同期を無視する

同期フォルダの特定のファイルを Resilio Sync によって追跡されないようにしたい場合、IgnoreList を使ってください。IgnoreList は隠しフォルダの .sync に入っています。

IgnoreList は UTF-8 でエンコードされた .txt ファイルで、ファイルのパスやルールを記述して同期の対象から外すことができます。IgnoreList ファイルは1行ごとに1つのルールを指定します。無視フィルターにかかったファイルはインデックスの対象外になり Sync のメインビューの "Size" カラムにカウントされなくなります。

ワイルドカード記号の '?' や '*' を使用することができます。

IgnoreList をフォルダに適用した場合、既に同期されたフォルダ内のファイルに効果はありません。インデックスに含まれたファイルを IgnoreList に追加した場合、他の同期デバイスでファイルが削除されます。削除されないようにしたい場合:

  • 全てのデバイスでフォルダを同期から外す。
  • 全てのデバイスの IgnoreList ファイルを編集して同じ情報を記入する。
  • 修正を加えたフォルダを再度追加する。

詳しくは Ignoring files in Sync (IgnoreList) を参照してください。

Error while loading shared libraries: libcrypt.so.1

バイナリまたはサービスとして rslsync を開始する際に、エラーメッセージ error whileloadshared library: libcrypt.so.1 が表示された場合は、パッケージ libxcrypt-compat をインストールしてください。

参照