17
18

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

【ownCloud と連携】Raspberry Pi に BitTorrent Sync 最新版 をインストールする方法

Last updated at Posted at 2015-04-16

はじめに

前に ownCloud と BitTorrent Sync を組み合わせて Dropbox 風のストレージを構築する記事 を書きましたが,BitTorrent Sync のバージョンが古かった(1.4)ので,今回は Raspberry Pi(Raspbian) に BitTorrent Sync 最新版をインストールして ownCloud と組み合わせる方法を書きたいと思います.おそらく,ARM ベースの Debian/Ubuntu であれば Raspbian でなくとも同じ手順で出来ます.

また,現在(2015/04/16)BitTorrent Sync の最新バージョンは 2.0 となっており,今後もバージョンアップが予想されるためそれに対応できるようにもしたいと思います.

1. BitTorrent Sync のダウンロード

Raspberry Pi に Linux/ARM の最新版ダウンロードします.
以下のコマンドで出来ない場合は 公式HP からダウンロードしてください(作業ディレクトリはホームとします).

pi@raspberrypi ~ $ wget https://download-cdn.getsyncapp.com/stable/linux-arm/BitTorrent-Sync_arm.tar.gz

2. アーカイブファイルの解凍

ダウンロードされたファイルは tar.gz で圧縮されているため解凍します.

pi@raspberrypi ~ $ tar -xvf BitTorrent-Sync_arm.tar.gz

3. アプリディレクトリを作成する

どこでもいいですが,解凍して出てきたファイルを置いておくディレクトリを作成します.
ここでは /etc/btsync/ にします.また,バイナリファイル(btsync)も同時に移動します.

pi@raspberrypi ~ $ sudo mkdir /etc/btsync
pi@raspberrypi ~ $ sudo mv btsync /etc/btsync/

4. 設定ファイルを作成する

アプリディレクトリに BitTorrent Sync の設定ファイルを適当なエディタで作成します.
ここでは WebUI を外部から使用できるようにすること,その際には https を使うこと,またサーバ証明書は nginx(ownCloud の構築に使用した Web サーバ)と同じものを使用することを記載しています.
この設定を用いる場合は以下のことに気をつけてください.

  • nginx で使用するサーバ証明書のアクセス権限を 644 に変更する
  • Web UI で使用する 8888 と,ファイル同期に使用する 55555 ポートを開放する
pi@raspberrypi ~ $ sudo nano /etc/btsync/btsync.conf
/etc/btsync/btsync.conf
{
  "device_name": "pi",
  "listening_port" : 55555, // listening port
  "use_upnp" : true,
  "download_limit" : 0,
  "upload_limit" : 0,
  "webui" :
  {
    "listen" : "0.0.0.0:8888"
    ,"force_https" : true
    ,"ssl_certificate" : "/etc/nginx/cert.pem"
    ,"ssl_private_key" : "/etc/nginx/cert.key"
  }
}

5. BitTorrent Sync の所有者とパーミッションを変更する

BitTorrent Sync と ownCloud と組み合わせるためには ownCloud を公開している Web サーバと同じ所有者(あるいはグループ)で BitTorrent Sync のデーモンを動かしてやる必要があります.そのために必要なことの一つとして,各ファイルの所有者およびパーミッションを変更します.

pi@raspberrypi ~ $ sudo chown -R www-data:www-data /etc/btsync
pi@raspberrypi ~ $ sudo chmod -R 755 /etc/btsync

6. サービスの登録

BitTorrent Sync をサービスとして動作させるための設定を行います.
設定ファイルの書き方がこれでいいのかちょっと自信ないのですが動いているのでよしとします(^ω^;;;)
ポイントは Web サーバと同じユーザでデーモンを実行すること(ここでは www-data),
ownCloud(WebDAV)とデータを共有するため,UMASK(007 か 077)をかけることです.
また先ほど作成した BitTorrent Sync の設定ファイルも起動時に読み取るようにします.

pi@raspberrypi ~ $ sudo nano /etc/init.d/btsync
/etc/init.d/btsync
#! /bin/sh
NAME=btsync
USER=www-data
GROUP=www-data
UMASK=007
DAEMON=/etc/btsync/btsync
CONFFILE=/etc/btsync/btsync.conf
DAEMON_ARGS="--config $CONFFILE"
SCRIPTNAME=/etc/init.d/$NAME

do_start()
{
   start-stop-daemon --start -c $USER:$GROUP -k $UMASK --exec $DAEMON -- $DAEMON_ARGS
}

do_stop()
{
   start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --exec $DAEMON
}

case "$1" in
  start)
        do_start
        ;;
  stop)
        do_stop
        ;;
  restart)
        do_stop
        do_start
        ;;
  *)
        echo "Usage: $SCRIPTNAME {start|stop|restart}" >&2
        exit 3
        ;;
esac

:

設定ファイルを保存したらパーミッションを変更して,サービスとして登録しましょう.

pi@raspberrypi ~ $ sudo chmod 755 /etc/init.d/btsync
pi@raspberrypi ~ $ sudo update-rc.d btsync defaults

7. 動かす

あとはサービスをスタートしてやれば動きます.

pi@raspberrypi ~ $ sudo service btsync start

ownCloud との共有の仕方や BitTorrent Sync の設定の仕方は 前回の記事 等を参照してもらえたらと思います.
お疲れ様でした.

8. アップデート方法

BitTorrent Sync がアップデートされた場合は新たにバイナリファイルをダウンロードして,所有者・パーミッションを書き換えてから 古いファイルと置換してやればよいです.

17
18
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
17
18

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?