# BitTorrent Sync (日本語)

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

## 安全性

BitTorrent Sync は AES 暗号と secret (同期するフォルダごとによって固有のランダムな文字列、20バイト以上) を元にして作成された 256-bit のキーを使って異なるデバイス間の同期を暗号化します｡

## Secret

BitTorrent Sync はフォルダの同期に 'secret' と呼ばれる、base32 でエンコードしたランダムな21バイトのキーという特殊な方法を用います｡

## 同期

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

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

## インストール

btsync は AUR からインストール可能です｡パッケージは btsync デーモンのための systemd サービスを含みます｡ このパッケージは、システム運用のための /etc/btsync.conf を作成します｡systemctl を実行する前に、このファイルの中で、ログイン ID やパスワードなど、変更したい箇所を変更しておいてください｡

また、'tar.gz' でパッケージングされた実行可能ファイルが 公式ウェブサイト から取得できます｡

以下のガイドは btsync の AUR 版を用いていることを前提にしています｡

## 使い方

BTSync の Linux クライアントは、典型的な GUI を用いることはできません｡代わりに、`localhost:8888` でアクセス可能な WebUI サーバをセットアップします｡同期フォルダは設定ファイルの中で静的に設定することもできますが、そうすると WebGUI が使えなくなります｡

インストールしたら、`~/.config/btsync/btsync.conf` に設定ファイルを作成する必要があります｡#設定 を見てください｡ 設定ファイルの構成が完了したら、以下のようにサービスを開始または（起動時に開始したいなら）有効化してください:

    # systemctl start btsync@user
    # systemctl enable btsync@user

@ 以下の `user` は実行したいユーザーで置き換えてください｡サービスは、そのユーザーで実行されます｡

`btsync` システムユーザーとして実行したいなら、`@user` を取り払って以下のように実行してください:

    # systemctl enable btsync
    # systemctl start btsync

このユーザーのための設定はデフォルトで `/etc/btsync.conf` に設置されます｡またメタデータは `/var/lib/btsync/` に保存されます｡以下を読み、ユーザーとパスワードを定義してください｡

## 設定

`btsync --dump-sample-config` を用いてサンプル設定ファイルを作成することができます｡以下の設定などを変更したほうがいいでしょう:

- device_name
- storage_path
- webui/login
- webui/password

Note: storage_path の設定は、メタデータが保存される場所を定義します｡同期するファイルではありません｡同期するファイルの保存場所は WebGUI でフォルダごとに定義します｡

### 設定ファイルの自動作成

btsync-autoconfig は systemd サービス (btsync-autoconfig@user.service) を提供します｡これを有効にすると、btsync@user.service が起動した時に、設定ファイルが存在しない場合、デフォルト値を使って設定ファイルを作成します｡インストールスクリプトはデフォルトで btsync-autoconfig@user.service を有効にします。

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

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

## トラブルシューティング

### storage path が見つからない

もしサービスを開始しても WebUI が使えない場合、btsync が陥っている状態を `systemctl status btsync@user` で確認してください｡

`Storage path specified in config file does not exist.` はよくあるエラーです｡btsync-autoconfig は設定ファイルを作成しますが、storage ディレクトリは作成しません｡したがって次を実行します: `mkdir ~/.btsync`｡

### WebUI がポート8888で動作していない

設定ファイルが btsync-autoconfig によって生成された場合、ポートは異なるように設定されます｡8888ではなく、`btsync` のユーザーインスタンスのポートは `7889 + $UID` になります｡もし、あなたの `$UID` が"1000"なら、ポートは8889となります｡

### WebUI が `7889 + $UID` で動作していない

btsync-autoconfig は $HOME/.btsync ディレクトリを作成しないので、起動する前に作成しておく必要があります｡

### いくつかのファイル/フォルダの同期を無視する

もし BitTorrent Sync に追跡されたくないフォルダがある場合、`.Syncignore` を用いてください｡`.Syncignore` は UTF-8 でエンコードされた .txt ファイルで、同期時に無視するファイルやパターンを定義することができます｡'?' と '*' ワイルドカードシンボルをサポートします｡

Note: `.Syncignore` は同期したくないファイルが同期される前に定義してください｡もしインデックスされたファイルを指定した場合、そのファイルは削除されます｡これを避けるために以下を実行してください:

- 全デバイスから同期フォルダを削除する。
- 全デバイスに共通の `.Syncignore` ファイルを定義する。
- フォルダを追加し直す｡

## 参照

Official BitTorrent Sync FAQ

Category:

- Internet Applications (日本語)