CentOS
sync

Resilio Sync(旧名 BitTorrent Sync)をユーザー権限で起動させる

はじめに

CentOS 7にて、Resilio Sync(BitTottent Sync)がレポジトリに登録できるようになり、yumコマンドからインストールできるようになりました。これによってdaemon起動ファイルが /usr/bin/rslsyncとなりました。
複数のPCにまたがったファイル/フォルダを共有は主にDropboxを使用しているのですが、共有するフォルダが限定されている場合、クラウドよりもP2Pを使用したResilio Syncの方が同期速度が速く、作業に向いています。
しかし、Resilio syncの設定がバージョンアップのたびに大きく変わることがあって、今回は特に苦労しました。これはその備忘録です。

Resilio syncの実行ユーザー

CentOS 7でResilio sync(執筆時のバージョンは、2.5.8)をデフォルトで起動させると、「rslsync」というユーザーでdaemonが起動します。しかしこれはもともとLinux側で生成されたユーザーではないので、パーミッション等の問題で正しく起動しないケースが存在します。

自分のユーザー名で起動する

自分の場合、自分のユーザーでdaemonを起動させたいため、デフォルトで使用している「rslsync」ユーザー起動を停止させ、コンフィギュレーション機能を使って設定ファイルを生成し、それを編集して起動させました。
以下のように、もし起動させていたらdaemonを停止させ、さらにCentOS起動時にデフォルトでdaemonを起動させないようにします。

sudo systemctl stop resilio-sync
sudo systemctl disable resilio-sync
systemctl --user stop resilio-sync
systemctl --user disable resilio-sync
sudo killall rslsync
systemctl --user start resilio-sync
systemctl --user enable resilio-sync

次に、ユーザー権限で使用するようにコンフィギュレーションを使用します。

mkdir -p ${HOME}/sync-storage
rslsync --dump-sample-config > ${HOME}/sync-storage/sync.conf
sed -i -e '6d' ${HOME}/sync-storage/sync.conf
sed -i -e '6i"storage_path" : "'${HOME}'/sync-storage",' ${HOME}/sync-storage/sync.conf
rslsync --config ${HOME}/sync-storage/sync.conf

電源ON時には、手動でdaemonを起動させます。

rslsync --config ${HOME}/sync-storage/sync.conf

Resilio Syncの同期速度

自分の環境では、PC同士はハブを経由してGbEで接続されています。アプリの画面上では、同期中はほぼ常時数MB/s、ピーク時で数十MB/sの速度で同期を行います。
image.png

ここ最近のバージョンアップで、速度がかなり改善した印象を受けます。

参考

Running Sync In Configuration Mode