「Resilio Sync」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(1版 をインポートしました)
(他言語へのリンクを修正)
 
(4人の利用者による、間の9版が非表示)
1行目: 1行目:
[[Category:インターネットアプリケーション]]
+
[[Category:同期]]
[[en:BitTorrent_Sync]]
+
[[en:Resilio Sync]]
  +
{{Related articles start}}
[http://labs.bittorrent.com/experiments/sync.html BitTorrent Sync] (BTSync) は [http://en.wikipedia.org/wiki/Bittorrent BitTorrent] プロトコルを用いたファイル同期ソフトウェアです。他の同期ソフトウェアと違い、ファイルをオンラインのサーバにアップロードせず、各々のデバイスが直接サーバからファイルを取得します。ファイル転送は直接 (peer to peer) 行われるため、データストレージ容量や転送速度に制限がありません。
 
  +
{{Related|Syncthing}}
== 安全性 ==
 
  +
{{Related|バックアッププログラム}}
BitTorrent Sync は AES 暗号と secret (同期するフォルダごとによって固有のランダムな文字列、20バイト以上) を元にして作成された 256-bit のキーを使って異なるデバイス間の同期を暗号化します。
 
  +
{{Related articles end}}
  +
[https://www.resilio.com/individuals/ Resilio Sync] (旧名: [https://www.getsync.com/ BitTorrent Sync (BTSync)] は、BitTorrent ピアツーピア (P2P) プロトコルに依存する独自のファイル共有システムです。
   
  +
すべてのファイルをアーカイブする中央サーバーを持たずに、デバイス自体間のピアツーピア接続を使用するため、データストレージや転送速度に制限はありません。ユーザーのデータは、ユーザーが同期することを選択したデバイスに排他的に保存されるため、オンラインになるには少なくとも 2 つのユーザーデバイス、つまり "ノード" が必要です。多くのデバイスが同時に接続されている場合、ファイルはメッシュネットワークトポロジでデバイス間で共有されます。
== Secret ==
 
BitTorrent Sync はフォルダの同期に 'secret' と呼ばれる、base32 でエンコードしたランダムな21バイトのキーという特殊な方法を用います。
 
   
  +
デバイス間のすべてのトラフィックは、一意のセッションキーを使用して、カウンターモードの AES-128 で暗号化されます。このキーは、それ自体が Base32 でエンコードされたランダムな 21 バイトのキーである 'シークレット' から派生します。'シークレット' を渡すことで、他のユーザーとファイルやフォルダーを共有できるようになります。デバイスが同期用のフォルダーを追加すると、シークレットが生成されます。今後、そのフォルダーを同期したいすべてのデバイスはシークレットキーを知っている必要があります。両方のデバイスに十分なディスク容量がある限り、同期には速度やサイズの制限はありません。
== 同期 ==
 
同期フォルダをデバイスが追加した時、secret が作成されます。以降、同期が必要なデバイスはこの鍵を知らなくてはなりません。
 
   
同期には、2者間に十分なディスクスペースがあれば、速度やサイズの制限はありません。
 
 
== インストール ==
 
== インストール ==
{{AUR|btsync}} は [[Arch User Repository|AUR]] からインストール可能です。パッケージは btsync デーモンのための [[systemd|systemd]] サービスを含みます。
 
このパッケージは、システム運用のための /etc/btsync.conf を作成します。systemctl を実行する前に、このファイルの中で、ログイン ID やパスワードなど、変更したい箇所を変更しておいてください。
 
   
  +
{{AUR|rslsync}} は [[Arch User Repository|AUR]] からインストール可能です。パッケージには rslsync デーモンを管理するための [[systemd]] サービスが含まれています。また、デフォルトの {{ic|/etc/rslsync.conf}} が作成されます。[[systemctl]] を使って起動する前に、ファイルの中のログイン ID やパスワードなど、変更したい箇所を変更しておいてください。
また、'tar.gz' でパッケージングされた実行可能ファイルが [http://labs.bittorrent.com/experiments/sync.html 公式ウェブサイト] から取得できます。
 
   
以下のガイドは btsync AUR 用いていることを前提にしています
+
また、'tar.gz' でパッケージングされた実行可能ファイルが [http://www.bittorrent.com/sync/download/ 公式ウェブサイト] から取得できます。以下のガイドは AUR から rslsyncインストールしていることを前提にしています
   
== 使方 ==
+
== 使 ==
BTSync の Linux クライアントは、典型的な GUI を用いることはできません。代わりに、{{ic|localhost:8888}} でアクセス可能な WebUI サーバをセットアップします。同期フォルダは設定ファイルの中で静的に設定することもできますが、そうすると WebGUI が使えなくなります。
 
   
  +
Resilio Sync の Linux クライアントは一般的な GUI を使用せず、代わりに {{ic|localhost:8888}} にアクセスできる WebUI サーバーをセットアップします。共有フォルダーは設定ファイルで静的に構成することもできますが、そうすると WebGUI が無効になります。
インストールしたら、{{ic|~/.config/btsync/btsync.conf}} に設定ファイルを作成する必要があります。[[#設定]] を見てください。 設定ファイルの構成が完了したら、以下のようにサービスを開始または(起動時に開始したいなら)有効化してください:
 
$ systemctl --user daemon-reload
 
$ systemctl --user start btsync
 
$ systemctl --user enable btsync
 
   
  +
インストールしたら、まず {{ic|~/.config/rslsync/rslsync.conf}} に設定ファイルを作成する必要があります。[[#設定]] を参照してください。{{ic|storage_path}} ディレクトリも作成する必要があります。それが完了したら、ユーザー サービス {{ic|rslsync}} を開始し、(ブート時に開始したい場合は) [[起動/有効化]] (つまり、{{ic|--user}} フラグを使用) を実行します。
{{ic|btsync}} システムユーザーとして実行したいなら、{{ic|--user}} を取り払って以下のように実行してください:
 
  +
# systemctl enable btsync
 
  +
サービスは、コマンドを呼び出したユーザーとして実行されます。上記のコマンドは root として実行 ''されない'' ことに注意してください。root として実行すると、D-Bus が接続を拒否したことを示す不可解なエラーが発生する可能性があります。
# systemctl start btsync
 
  +
このユーザーのための設定はデフォルトで {{ic|/etc/btsync.conf}} に設置されます。またメタデータは {{ic|/var/lib/btsync/}} に保存されます。以下を読み、ユーザーとパスワードを定義してください。
 
  +
{{note|
  +
* {{ic|rslsync}} をユーザーで実行する場合、{{ic|rslsync.conf}} ファイルと {{ic|rslsync.pid}} ファイルが存在するディレクトリのパーティションが適切に設定されていることを確認してください。ユーザーがアクセスできない場所にファイルが置かれている場合、サービスの起動に失敗します。ユーザーのパーティションは正しいのに {{ic|rslsync}} の起動に失敗する場合、マシンを再起動してください。
  +
* ヘッドレスサーバーで {{ic|rslsync}} を実行する場合、lingering を有効にしてユーザーセッションの外でも {{ic|rslsync}} が実行されるようにしてください: [[Systemd/ユーザー#systemd のユーザーインスタンスを自動起動]]を見てください。}}
  +
  +
{{ic|rslsync.service}} をシステムユーザー ({{ic|--user}} フラグなし) で実行することもできます:
  +
  +
このユーザーの設定は {{ic|/etc/rslsync.conf}} にあり、メタデータはデフォルトで {{ic|/var/lib/rslsync/}} に保存されます。設定、特にユーザーとパスワードを確認する必要があります。以下を参照してください。
   
 
== 設定 ==
 
== 設定 ==
  +
{{ic|btsync --dump-sample-config}} を用いてサンプル設定ファイルを作成することができます。以下の設定などを変更したほうがいいでしょう:
 
  +
以下のコマンドでサンプル設定ファイルを作成することができます:
  +
# rslsync --dump-sample-config > ~/.config/rslsync/rslsync.conf
  +
  +
変更するべき設定は以下の通りです:
 
* device_name
 
* device_name
 
* storage_path
 
* storage_path
40行目: 44行目:
 
* webui/password
 
* webui/password
   
  +
{{note|
{{note|storage_path の設定は、メタデータが保存される場所を定義します。同期するファイルでは'''ありません'''。同期するファイルの保存場所は WebGUI でフォルダごとに定義します。}}
 
  +
* {{ic|rslsync}} は {{ic|storage_path}} ディレクトリが存在しない場合でも自動的には作成してくれません。ディレクトリが存在しない場合、手動で作成するか[[#設定ファイルの自動作成|設定ファイルの自動作成]]を使ってください。
  +
* storage_path の設定は、メタデータが保存される場所を定義します。同期するファイルでは'''ありません'''。同期するファイルの保存場所は WebGUI でフォルダごとに定義します。
  +
* 最近のバージョンの {{ic|rslsync}} では {{ic|webui/password_hash}} が上手く動作しません。代わりに {{ic|webui/password}} でファイルを指定してください。
  +
}}
   
 
===設定ファイルの自動作成===
 
===設定ファイルの自動作成===
   
{{AUR|btsync-autoconfig}} は [[systemd|systemd]] サービス (btsync-autoconfig@user.service) を提供しす。こ有効にすると、btsync@user.service が起動した、設定ファイルが存在しない場合、デフォルト値を使って設定ファイルを作成します。インストールスクリプトはデフォルトで btsync-autoconfig@user.service を有効にします。
+
{{AUR|btsync-autoconfig}} パッケージには systemd のユーザーサービス ({{ic|btsync-autoconfig.service}}) が含まれており、有効にすると、ユーザーの {{ic|btsync.service}} が起動したときにデフォルト値設定ファイルを作成します。
   
  +
{{note|{{AUR|btsync-autoconfig}} によって設定ファイルが作成された場合、ポートの設定が違うかもしれません。{{ic|btsync}} のユーザーインスタンスのポートは 8888 ではなく {{ic|7889 + $UID}} になります。{{ic|$UID}} が "1000" なら、ポートは 8889 です。}}
btsync-autoconfig@user.service は {{ic|~/.config/btsync/btsync.conf}} が存在しない場合に、以下のようにデフォルトの設定値を使います:
 
  +
  +
インストールスクリプトはデフォルトで全てのユーザーでサービスを有効化します。以下のコマンドで無効化することができます:
  +
  +
# systemctl --global disable btsync-autoconfig.service
  +
  +
以下のコマンドを使うことで特定のユーザで有効化できます:
  +
  +
$ systemctl --user enable btsync-autoconfig.service
  +
  +
{{ic|btsync-autoconfig.service}} は {{ic|~/.config/btsync/btsync.conf}} が存在しない場合、デフォルトで作成しますが、設定のデフォルト値は以下のようになります:
   
 
* device_name: {{ic|$USER@$HOSTNAME}}
 
* device_name: {{ic|$USER@$HOSTNAME}}
 
* storage_path: {{ic|~/.btsync}}
 
* storage_path: {{ic|~/.btsync}}
* webui/login: {{ic|$USER}}/password
+
* webui/login: {{ic|$USER/password}}
   
  +
また、スクリプトは {{ic|storage_path}} ディレクトリも作成します。設定ファイルの作成とは別に行われます。
==トラブルシューティング==
 
===storage path が見つからない===
 
もしサービスを開始しても WebUI が使えない場合、btsync が陥っている状態を {{ic|systemctl --user status btsync}} で確認してください。
 
   
  +
== トラブルシューティング ==
{{ic|Storage path specified in config file does not exist.}} はよくあるエラーです。{{AUR|btsync-autoconfig}} は設定ファイルを作成しますが、storage ディレクトリは作成しません。したがって次を実行します: {{ic|mkdir ~/.btsync}}。
 
   
===WebUI がポー8888で動作していない===
+
=== レージパスが見つからない ===
   
  +
サービスを起動しても WebUI にアクセスできない場合、{{ic|systemctl --user status rslsync}} を実行して rslsync の状態を確認してください (システムインスタンスの場合は {{ic|systemctl status rslsync}} を実行)。
設定ファイルが {{AUR|btsync-autoconfig}} によって生成された場合、ポートは異なるように設定されます。8888ではなく、{{ic|btsync}} のユーザーインスタンスのポートは {{ic|7889 + $UID}} になります。もし、あなたの {{ic|$UID}} が"1000"なら、ポートは8889となります。
 
   
  +
よくあるエラーは {{ic|Storage path specified in config file does not exist.}} です。{{ic|mkdir ~/.rslsync}} を実行するか、{{ic|storage_path}} の設定を変更することで簡単に解決できます。
===WebUI が {{ic|7889 + $UID}} で動作していない===
 
{{AUR|btsync-autoconfig}} は $HOME/.btsync ディレクトリを作成しないので、起動する前に作成しておく必要があります。
 
   
===いくつかのファイル/フォルダの同期を無視する===
+
===特定のファイルフォルダの同期を無視する===
もし BitTorrent Sync に追跡されたくないフォルダがある場合、{{ic|.Syncignore}} を用いてください。{{ic|.Syncignore}} は UTF-8 でエンコードされた .txt ファイルで、同期時に無視するファイルやパターンを定義することができます。'?' と '*' ワイルドカードシンボルをサポートします。
 
   
  +
同期フォルダの特定のファイルを Resilio Sync によって追跡されないようにしたい場合、{{ic|IgnoreList}} を使ってください。{{ic|IgnoreList}} は隠しフォルダの {{ic|.sync}} に入っています。
{{note|{{ic|.Syncignore}} は同期したくないファイルが同期される前に定義してください。もしインデックスされたファイルを指定した場合、そのファイルは削除されます。これを避けるために以下を実行してください:
 
  +
* 全デバイスから同期フォルダを削除する。
 
  +
{{ic|IgnoreList}} は UTF-8 でエンコードされた .txt ファイルで、ファイルのパスやルールを記述して同期の対象から外すことができます。{{ic|IgnoreList}} ファイルは1行ごとに1つのルールを指定します。無視フィルターにかかったファイルはインデックスの対象外になり Sync のメインビューの "Size" カラムにカウントされなくなります。
* 全デバイスに共通の {{ic|.Syncignore}} ファイルを定義する。
 
  +
* フォルダを追加し直す。
 
  +
ワイルドカード記号の '?' や '*' を使用することができます。
}}
 
  +
  +
{{ic|IgnoreList}} をフォルダに適用した場合、既に同期されたフォルダ内のファイルに効果はありません。インデックスに含まれたファイルを {{ic|IgnoreList}} に追加した場合、他の同期デバイスでファイルが削除されます。削除されないようにしたい場合:
  +
  +
* 全てのデバイスでフォルダを同期から外す。
  +
* 全てのデバイスの {{ic|IgnoreList}} ファイルを編集して同じ情報を記入する。
  +
* 修正を加えたフォルダを再度追加する。
  +
  +
詳しくは [http://help.getsync.com/customer/portal/articles/1673122-ignoring-files-in-sync-ignorelist-?b_id=3895 Ignoring files in Sync (IgnoreList)] を参照してください。
  +
  +
=== Error while loading shared libraries: libcrypt.so.1 ===
  +
  +
バイナリまたはサービスとして rslsync を開始する際に、エラーメッセージ {{ic|error whileloadshared library: libcrypt.so.1}} が表示された場合は、パッケージ {{Pkg|libxcrypt-compat}} をインストールしてください。
   
==参照==
+
== 参照 ==
   
[http://www.bittorrent.com/help/faq/sync Official BitTorrent Sync FAQ]
+
*[http://help.getsync.com/ Official Resilio Sync Help]
  +
*[https://help.getsync.com/hc/en-us/articles/212001046-Resilio-Sync-FAQ Official Resilio Sync FAQ]

2024年3月8日 (金) 00:03時点における最新版

関連記事

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 をインストールしてください。

参照