「Resilio Sync」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(Kusakata がページ「BitTorrent Sync」を「Resilio Sync」に移動しました)
(同期)
1行目: 1行目:
 
[[Category:インターネットアプリケーション]]
 
[[Category:インターネットアプリケーション]]
[[en:BitTorrent_Sync]]
+
[[en:Resilio Sync]]
  +
[[ru:BitTorrent Sync]]
[http://labs.bittorrent.com/experiments/sync.html BitTorrent Sync] (BTSync) は [http://en.wikipedia.org/wiki/Bittorrent BitTorrent] プロトコルを用いたファイル同期ソフトウェアです。他の同期ソフトウェアと違い、ファイルをオンラインのサーバにアップロードせず、各々のデバイスが直接サーバからファイルを取得します。ファイル転送は直接 (peer to peer) 行われるため、データストレージ容量や転送速度に制限がありません。
 
  +
{{Related articles start}}
== 安全性 ==
 
  +
{{Related|Syncthing}}
BitTorrent Sync は AES 暗号と secret (同期するフォルダごとによって固有のランダムな文字列、20バイト以上) を元にして作成された 256-bit のキーを使って異なるデバイス間の同期を暗号化します。
 
  +
{{Related|バックアッププログラム}}
  +
{{Related articles end}}
  +
[https://www.resilio.com/individuals/ Resilio Sync] (旧名: [https://www.getsync.com/ BitTorrent Sync (BTSync)] は [http://en.wikipedia.org/wiki/Bittorrent BitTorrent] プロトコルを用いたファイル同期ソフトウェアです。他の同期ソフトウェアと違い、ファイルをオンラインのサーバにアップロードせず、各々のデバイスが直接サーバからファイルを取得します。ファイル転送は直接 (peer to peer) 行われるため、データストレージ容量や転送速度に制限がありません。
   
== Secret ==
+
== 安全性 ==
BitTorrent Sync フォルダの同期'secret' と呼ばれる、base32 でエンコードしたランダムな21バイトのキーという特殊な方法を用います。
+
AES-128 暗号と secret (同期するフォルダごとによって固有のランダムな文字列、20バイト以上) を元にして作成された256ビットのキーを使って異なるデバイス間の同期は暗号化されます。'secret' と呼ばれる、base32 でエンコードしたランダムな21バイトのキーという特殊な方法を用います。
   
 
== 同期 ==
 
== 同期 ==
12行目: 15行目:
   
 
同期には、2者間に十分なディスクスペースがあれば、速度やサイズの制限はありません。
 
同期には、2者間に十分なディスクスペースがあれば、速度やサイズの制限はありません。
  +
 
== インストール ==
 
== インストール ==
{{AUR|btsync}} は [[Arch User Repository|AUR]] からインストール可能です。パッケージは btsync デーモンための [[systemd|systemd]] サービスます。
+
{{AUR|rslsync}} は [[Arch User Repository|AUR]] からインストール可能です。パッケージrslsync デーモンを管理するための [[systemd]] サービスまれています。また、デフォルトの {{ic|/etc/rslsync.conf}} が作成されます。[[systemctl]] を使って起動する前に、ファイルの中のログイン ID やパスワードなど、変更したい箇所を変更しておいてください
このパッケージは、システム運用のための /etc/btsync.conf を作成します。systemctl を実行する前に、このファイルの中で、ログイン ID やパスワードなど、変更したい箇所を変更しておいてください。
 
   
また、'tar.gz' でパッケージングされた実行可能ファイルが [http://labs.bittorrent.com/experiments/sync.html 公式ウェブサイト] から取得できます。
+
また、'tar.gz' でパッケージングされた実行可能ファイルが [http://www.bittorrent.com/sync/download/ 公式ウェブサイト] から取得できます。以下のガイドは AUR から rslsync をインストールしていることを前提にしています。
 
以下のガイドは btsync の AUR 版を用いていることを前提にしています。
 
   
 
== 使い方 ==
 
== 使い方 ==
BTSync の Linux クライアントは典型的な GUI を用いることはできません。代わりに、{{ic|localhost:8888}} アクセス可能な WebUI サーバをセットアップします。同期フォルダは設定ファイルの中で静的に設定することもできますが、そうすると WebGUI が使えなくなります。
+
Resilio Sync の Linux クライアントは典型的な GUI が存在しません。代わりに、{{ic|localhost:8888}} からアクセス可能な WebUI サーバをセットアップします。同期フォルダは設定ファイルで静的に設定することもできますが、そうすると WebGUI が使えなくなります。
   
インストールしたら、{{ic|~/.config/btsync/btsync.conf}} に設定ファイルを作成する必要があります。[[#設定]] を見てください。 設定ファイル成が完了したら、以下のようにサービスを開始または(起動時に開始したいなら)有効化してください:
+
インストールしたら、{{ic|~/.config/rslsync/rslsync.conf}} に設定ファイルを作成する必要があります。[[#設定]] を見てください。{{ic|storage_path}} ディレクトリも必要です。設定が完了したら、以下のようにサービスを開始または(起動時に開始したいなら)有効化してください:
$ systemctl --user daemon-reload
+
$ systemctl --user start rslsync
$ systemctl --user start btsync
+
$ systemctl --user enable rslsync
  +
上記のコマンドは root で実行しないことに注意してください。root で実行すると D-BUS が接続を拒否するためエラーが発生します。
$ systemctl --user enable btsync
 
   
  +
{{note|
{{ic|btsync}} システムユーザーとして実行したいなら、{{ic|--user}} を取り払って以下のように実行してください:
 
  +
* {{ic|rslsync}} をユーザーで実行する場合、{{ic|rslsync.conf}} ファイルと {{ic|rslsync.pid}} ファイルが存在するディレクトリのパーティションが適切に設定されていることを確認してください。ユーザーがアクセスできない場所にファイルが置かれている場合、サービスの起動に失敗します。ユーザーのパーティションは正しいのに {{ic|rslsync}} の起動に失敗する場合、マシンを再起動してください。
# systemctl enable btsync
 
  +
* ヘッドレスサーバーで {{ic|rslsync}} を実行する場合、lingering を有効にしてユーザーセッションの外でも {{ic|rslsync}} が実行されるようにしてください: [[Systemd/ユーザー#systemd のユーザーインスタンスを自動起動]]を見てください。}}
# systemctl start btsync
 
  +
このユーザーのための設定はデフォルトで {{ic|/etc/btsync.conf}} に設置されます。またメタデータは {{ic|/var/lib/btsync/}} に保存されます。以下を読み、ユーザーとパスワードを定義してください。
 
  +
{{ic|rslsync}} システムユーザーで実行することもできます。その場合 {{ic|--user}} を取ってください:
  +
# systemctl enable rslsync
  +
# systemctl start rslsync
  +
ユーザーの設定は {{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行目: 48行目:
 
* 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|rslsync-autoconfig}} パッケージには systemd のユーザーサービス ({{ic|rslsync-autoconfig.service}}) が含まれており、有効にすると、ユーザーの {{ic|rslsync.service}} が起動したときにデフォルト値設定ファイルを作成します。
   
  +
{{note|{{AUR|rslsync-autoconfig}} によって設定ファイルが作成された場合、ポートの設定が違うかもしれません。{{ic|rslsync}} のユーザーインスタンスのポートは 8888 ではなく {{ic|7889 + $UID}} になります。{{ic|$UID}} が "1000" なら、ポートは 8889 です。}}
btsync-autoconfig@user.service は {{ic|~/.config/btsync/btsync.conf}} が存在しない場合に、以下のようにデフォルトの設定値を使います:
 
  +
  +
インストールスクリプトはデフォルトで全てのユーザーでサービスを有効化します。以下のコマンドで無効化することができます:
  +
  +
# systemctl --global disable rslsync-autoconfig.service
  +
  +
以下のコマンドを使うことで特定のユーザで有効化できます:
  +
  +
$ systemctl --user enable rslsync-autoconfig.service
  +
  +
{{ic|rslsync-autoconfig.service}} は {{ic|~/.config/rslsync/rslsync.conf}} が存在しない場合、デフォルトで作成しますが、設定のデフォルト値は以下のようになります:
   
 
* device_name: {{ic|$USER@$HOSTNAME}}
 
* device_name: {{ic|$USER@$HOSTNAME}}
* storage_path: {{ic|~/.btsync}}
+
* storage_path: {{ic|~/.rslsync}}
* webui/login: {{ic|$USER}}/password
+
* webui/login: {{ic|$USER/password}}
  +
  +
また、スクリプトは {{ic|storage_path}} ディレクトリも作成します。設定ファイルの作成とは別に行われます。
   
 
==トラブルシューティング==
 
==トラブルシューティング==
===storage path が見つからない===
 
もしサービスを開始しても WebUI が使えない場合、btsync が陥っている状態を {{ic|systemctl --user status btsync}} で確認してください。
 
   
  +
===Missing storage path===
{{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}} を実行)。
===WebUI がポート8888で動作していない===
 
   
  +
よくあるエラーは {{ic|Storage path specified in config file does not exist.}} です。{{ic|mkdir ~/.rslsync}} を実行するか、{{ic|storage_path}} の設定を変更することで簡単に解決できます。
設定ファイルが {{AUR|btsync-autoconfig}} によって生成された場合、ポートは異なるように設定されます。8888ではなく、{{ic|btsync}} のユーザーインスタンスのポートは {{ic|7889 + $UID}} になります。もし、あなたの {{ic|$UID}} が"1000"なら、ポートは8889となります。
 
   
  +
===特定のファイルやフォルダの同期を無視する===
===WebUI が {{ic|7889 + $UID}} で動作していない===
 
{{AUR|btsync-autoconfig}} は $HOME/.btsync ディレクトリを作成しないので、起動する前に作成しておく必要があります。
 
   
  +
同期フォルダの特定のファイルを Resilio Sync によって追跡されないようにしたい場合、{{ic|IgnoreList}} を使ってください。{{ic|IgnoreList}} は隠しフォルダの {{ic|.sync}} に入っています。
===いくつかのファイル/フォルダの同期を無視する===
 
もし BitTorrent Sync に追跡されたくないフォルダがある場合、{{ic|.Syncignore}} を用いてください。{{ic|.Syncignore}} は UTF-8 でエンコードされた .txt ファイルで、同期時に無視するファイルやパターンを定義することができます。'?' と '*' ワイルドカードシンボルをサポートします。
 
   
  +
{{ic|IgnoreList}} は UTF-8 でエンコードされた .txt ファイルで、ファイルのパスやルールを記述して同期の対象から外すことができます。{{ic|IgnoreList}} ファイルは1行ごとに1つのルールを指定します。無視フィルターにかかったファイルはインデックスの対象外になり Sync のメインビューの "Size" カラムにカウントされなくなります。
{{note|{{ic|.Syncignore}} は同期したくないファイルが同期される前に定義してください。もしインデックスされたファイルを指定した場合、そのファイルは削除されます。これを避けるために以下を実行してください:
 
  +
* 全デバイスから同期フォルダを削除する。
 
  +
ワイルドカード記号の '?' や '*' を使用することができます。
* 全デバイスに共通の {{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)] を参照してください。
  +
  +
===ARM アライメントエラー===
  +
  +
{{ic|/etc/tmpfiles.d/rslsync.conf}} に {{ic|w /proc/cpu/alignment - - - - 2}} という行を追加してください (ファイルは作成する必要があります)。ただし、この設定をすると性能が劣化する可能性があります。
   
==参照==
+
== 参照 ==
   
[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]

2016年11月4日 (金) 22:12時点における版

関連記事

Resilio Sync (旧名: BitTorrent Sync (BTSync)BitTorrent プロトコルを用いたファイル同期ソフトウェアです。他の同期ソフトウェアと違い、ファイルをオンラインのサーバにアップロードせず、各々のデバイスが直接サーバからファイルを取得します。ファイル転送は直接 (peer to peer) 行われるため、データストレージ容量や転送速度に制限がありません。

安全性

AES-128 暗号と secret (同期するフォルダごとによって固有のランダムな文字列、20バイト以上) を元にして作成された256ビットのキーを使って異なるデバイス間の同期は暗号化されます。'secret' と呼ばれる、base32 でエンコードしたランダムな21バイトのキーという特殊な方法を用います。

同期

同期フォルダをデバイスが追加した時、secret が作成されます。以降、同期が必要なデバイスはこの鍵を知らなくてはなりません。

同期には、2者間に十分なディスクスペースがあれば、速度やサイズの制限はありません。

インストール

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 ディレクトリの作成も必要です。設定が完了したら、以下のようにサービスを開始または(起動時に開始したいなら)有効化してください:

$ systemctl --user start rslsync
$ systemctl --user enable rslsync

上記のコマンドは root で実行しないことに注意してください。root で実行すると D-BUS が接続を拒否するためエラーが発生します。

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

rslsync システムユーザーで実行することもできます。その場合 --user を取ってください:

# systemctl enable rslsync
# systemctl start rslsync

ユーザーの設定は /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 でファイルを指定してください。

設定ファイルの自動作成

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

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

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

# systemctl --global disable rslsync-autoconfig.service

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

$ systemctl --user enable rslsync-autoconfig.service

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

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

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

トラブルシューティング

Missing 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) を参照してください。

ARM アライメントエラー

/etc/tmpfiles.d/rslsync.confw /proc/cpu/alignment - - - - 2 という行を追加してください (ファイルは作成する必要があります)。ただし、この設定をすると性能が劣化する可能性があります。

参照