「Resilio Sync」の版間の差分
細 1版 をインポートしました |
他言語へのリンクを修正 |
||
| (4人の利用者による、間の9版が非表示) | |||
| 1行目: | 1行目: | ||
[[Category: |
[[Category:同期]] |
||
[[en: |
[[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]] サービスを含みます。 |
|||
| ⚫ | |||
| ⚫ | |||
また、'tar.gz' でパッケージングされた実行可能ファイルが [http://labs.bittorrent.com/experiments/sync.html 公式ウェブサイト] から取得できます。 |
|||
以下のガイドは |
また、'tar.gz' でパッケージングされた実行可能ファイルが [http://www.bittorrent.com/sync/download/ 公式ウェブサイト] から取得できます。以下のガイドは AUR から rslsync をインストールしていることを前提にしています。 |
||
== 使 |
== 使用方法 == |
||
| ⚫ | |||
| ⚫ | |||
| ⚫ | |||
| ⚫ | |||
$ systemctl --user start btsync |
|||
$ systemctl --user enable btsync |
|||
| ⚫ | |||
{{ic|btsync}} システムユーザーとして実行したいなら、{{ic|--user}} を取り払って以下のように実行してください: |
|||
# systemctl enable btsync |
|||
サービスは、コマンドを呼び出したユーザーとして実行されます。上記のコマンドは root として実行 ''されない'' ことに注意してください。root として実行すると、D-Bus が接続を拒否したことを示す不可解なエラーが発生する可能性があります。 |
|||
# systemctl start 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|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| |
|||
| ⚫ | |||
* {{ic|rslsync}} は {{ic|storage_path}} ディレクトリが存在しない場合でも自動的には作成してくれません。ディレクトリが存在しない場合、手動で作成するか[[#設定ファイルの自動作成|設定ファイルの自動作成]]を使ってください。 |
|||
| ⚫ | |||
* 最近のバージョンの {{ic|rslsync}} では {{ic|webui/password_hash}} が上手く動作しません。代わりに {{ic|webui/password}} でファイルを指定してください。 |
|||
| ⚫ | |||
===設定ファイルの自動作成=== |
===設定ファイルの自動作成=== |
||
{{AUR|btsync-autoconfig}} は |
{{AUR|btsync-autoconfig}} パッケージには systemd のユーザーサービス ({{ic|btsync-autoconfig.service}}) が含まれており、有効にすると、ユーザーの {{ic|btsync.service}} が起動したときにデフォルト値で設定ファイルを作成します。 |
||
| ⚫ | |||
| ⚫ | |||
インストールスクリプトはデフォルトで全てのユーザーでサービスを有効化します。以下のコマンドで無効化することができます: |
|||
# systemctl --global disable btsync-autoconfig.service |
|||
以下のコマンドを使うことで特定のユーザで有効化できます: |
|||
| ⚫ | |||
| ⚫ | |||
* device_name: {{ic|$USER@$HOSTNAME}} |
* device_name: {{ic|$USER@$HOSTNAME}} |
||
* storage_path: {{ic|~/.btsync}} |
* storage_path: {{ic|~/.btsync}} |
||
* webui/login: {{ic|$USER |
* 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 にアクセスできない場合、{{ic|systemctl --user status rslsync}} を実行して rslsync の状態を確認してください (システムインスタンスの場合は {{ic|systemctl status rslsync}} を実行)。 |
|||
| ⚫ | |||
よくあるエラーは {{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|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:// |
*[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 バイトのキーである 'シークレット' から派生します。'シークレット' を渡すことで、他のユーザーとファイルやフォルダーを共有できるようになります。デバイスが同期用のフォルダーを追加すると、シークレットが生成されます。今後、そのフォルダーを同期したいすべてのデバイスはシークレットキーを知っている必要があります。両方のデバイスに十分なディスク容量がある限り、同期には速度やサイズの制限はありません。
インストール
rslsyncAUR は AUR からインストール可能です。パッケージには 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
rslsyncはstorage_pathディレクトリが存在しない場合でも自動的には作成してくれません。ディレクトリが存在しない場合、手動で作成するか設定ファイルの自動作成を使ってください。- storage_path の設定は、メタデータが保存される場所を定義します。同期するファイルではありません。同期するファイルの保存場所は WebGUI でフォルダごとに定義します。
- 最近のバージョンの
rslsyncではwebui/password_hashが上手く動作しません。代わりにwebui/passwordでファイルを指定してください。
設定ファイルの自動作成
btsync-autoconfigAUR パッケージには systemd のユーザーサービス (btsync-autoconfig.service) が含まれており、有効にすると、ユーザーの btsync.service が起動したときにデフォルト値で設定ファイルを作成します。
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 をインストールしてください。