Raspbian + MinimServer + BubbleUPnP Server
完全な備忘録です(^^;)
Raspbian Jessie Lite をインストールした Raspberry Pi 3 Model B を起動。
$ssh pi@raspberrypi.local
password: raspberry
設定画面を起動して"1 Expand Filesystem" を実行&再起動。
$ sudo raspi-config
java をインストール
$ sudo apt-get update && sudo apt-get install oracle-java8-jdk
BubbleUPnP Server をダウンロードするディレクトリを作る。
$ mkdir bubbleupnp
作ったディレクトリに移動。
$ cd bubbleupnp
BubbleUPnP Server をダウンロード。
$ sudo wget http://www.bubblesoftapps.com/bubbleupnpserver/BubbleUPnPServer-distrib.zip -O bubbleupnpserver.zip
解凍.。
$ unzip bubbleupnpserver.zip
"launch.sh" のアクセス権を変更
$ sudo chmod +x launch.sh
BubbleUPnP サーバーを起動。
$ sudo ./launch.sh > /dev/null 2>&1 &
ブラウザで動作チェック。
http://raspberrypi.local:58050/
起動時にBubbleUPnP Server がスタートするよう設定。nano を使って /etc/init.d/ に "BubbleUPnPServer" というファイルを作成し、以下のテキストをコピペしてセーブ。
$ sudo nano /etc/init.d/BubbleUPnPServer
---------------------------------------------------------------------------------------------
#!/bin/bash
### BEGIN INIT INFO
# Provides: BubbleServer
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: BubbleUPnP Server Background Service Management
# Description: Used to ensure BubbleUPnP starts/stops etc
### END INIT INFO
DAEMON_PATH="/home/pi/bubbleupnp"
DAEMON="java -Xss256k -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true -Dfile.encoding="UTF-8" -jar BubbleUPnPServerLauncher.jar"
DAEMONOPTS=""
NAME=BubbleUPnPServer
DESC="Runs BubbleUPnPServer"
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
case "$1" in
start)
printf "%-50s" "Starting $NAME..."
cd $DAEMON_PATH
PID=`$DAEMON $DAEMONOPTS > /dev/null 2>&1 & echo $!`
#echo "Saving PID" $PID " to " $PIDFILE
if [ -z $PID ]; then
printf "%sn" "Fail"
else
echo $PID > $PIDFILE
printf "%sn" "Ok"
fi
;;
status)
printf "%-50s" "Checking $NAME..."
if [ -f $PIDFILE ]; then
PID=`cat $PIDFILE`
if [ -z "`ps axf | grep ${PID} | grep -v grep`" ]; then
printf "%sn" "Process dead but pidfile exists"
else
echo "Running"
fi
else
printf "%sn" "Service not running"
fi
;;
stop)
printf "%-50s" "Stopping $NAME"
PID=`cat $PIDFILE`
cd $DAEMON_PATH
if [ -f $PIDFILE ]; then
kill -HUP $PID
printf "%sn" "Ok"
rm -f $PIDFILE
else
printf "%sn" "pidfile not found"
fi
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: $0 {status|start|stop|restart}"
exit 1
esac
---------------------------------------------------------------------------------------------
コピペしたら、
DAEMON_PATH="/var/www/bubbleupnp"
を
DAEMON_PATH="/home/pi/bubbleupnp" (解凍したディレクトリを指定)
に変更。
ctrl + x ----> y enter で終了。
"/etc/init.d/BubbleUPnPServer" のアクセス権を変更。
$ sudo chmod 755 /etc/init.d/BubbleUPnPServer
"rc.d" ディレクトリにシンボリックリンクを張る。
$ sudo update-rc.d BubbleUPnPServer defaults
再起動。
$ sudo reboot
ブラウザで動作を確認。
http://raspberrypi.local:58050/
成功!
再度ログイン。
$ssh pi@raspberrypi.local
password: raspberry
起動時に NAS をマウントする設定。
NAS のユーザー&パスワードを "/etc/fstab.cred" というファイルを作って保存。
$ sudo nano /etc/fstab.cred
---------------------------------------------------------------------------------------------
username=USER
password=PASSWORD
---------------------------------------------------------------------------------------------
ctrl + X ----> y -----> enter で終了
"fstab.cred のアクセス権を設定。
$ sudo chmod 600 /etc/fstab.cred
"/etc/fstab" に以下の1行を追加。
$ sudo nano /etc/fstab
---------------------------------------------------------------------------------------------
//192.168.xx.xx/Multimedia/Music /mnt/storage cifs credentials=/etc/fstab.cred,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0
---------------------------------------------------------------------------------------------
*Description
//NASのアドレス/マウントするディレクトリ /mnt/NASの名前 cifs credentials=/etc/fstab.cred,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0
---------------------------------------------------------------------------------------------
ctrl + X ----> y -----> enter で終了
一度再起動(必要かどうか忘れたので念のため記載)
$ sudo reboot
RasPi の 電源を切って、MinimServer の "tar ball" をコピーした USBメモリーを RasPi に差して再度電源ON。
SSH でログイン。
$ssh pi@raspberrypi.local
password: raspberry
USB メモリーがどのディバイスとして認識されているか調べる。
$ sudo fdisk -l
-----------------
Device Boot Start End Sectors Size Id Type
/dev/sda1 35136 62324735 62289600 29.7G c W95 FAT32 (LBA)
---------------------
USBメモリーをマウント。
$ sudo mount /dev/sda1 /media
マウント・ポイントへ移動。
$ cd /media
tar ball を移動。
$ sudo mv MinimServer-0.8.4-linux-armhf.tar /home/pi/minimserver
USBメモリーをアンマウント。
$ sudo umount /dev/sda1
tar ball を移動したディレクトリに移る。
$ cd /home/pi/minimserver
tar ball を解凍。
$ tar -xf MinimServer-0.8.4-linux-armhf.tar
MinimServerのセットアップ。
$ minimserver/bin/setup
MinimServerをスタート。
$ minimserver/bin/startc
>Enter content directory, or null to continue:
#/mnt/strage
・・・成功!
がしかし、ミスって "content directry" が入力できなかった模様。
Minim Watch でなぜか設定変更できず。
http://raspberry piのIP:9790
で、MinimServer Status のページを表示して、content directry を設定することができた。
(追記)
ついでに USBメモリを自動認識させるためのパッケージをインストール。
$ sudo apt-get update
$ sudo apt-get install usbmount
(追記)
トランスコード機能を試すためにコーデックライブラリの "avconv" をインストール。
$ sudo apt-get update
$ sudo apt-get install libav-tools
確認。
$ ls -l /usr/bin/avconv
-rwxr-xr-x 1 root root 133632 Oct 8 03:06 /usr/bin/avconv
成功。
MinimWatch で Transcoding を設定。
alac:wav,aac:wav,mp3:wav
alac:wav24;88,aac:wav24;88,mp3:wav24;88
(追記)
iPad でシャットダウンするため固定IPアドレスを設定。以下を末尾に追加。
$ sudo nano /etc/dhcpcd.conf
---------------------------------------
interface eth0
static ip_address=192.168.x.x/24
static routers=192.168.x.x
static domain_name_servers=192.168.x.x
---------------------------------------------------
参考にさせていただいたサイト様
色々参考になること
http://inaz2.hatenablog.com/entry/2016/04/17/160226
content directry を追加する方法
http://forum.minimserver.com/showthread.php?tid=1338
USB の自動マウント
http://mmbrothers.exblog.jp/17039816
MinimStreamer のユーザーガイド
http://minimstreamer.com/userguide.html
avconv のインストール
http://www.recantha.co.uk/blog/?p=4106
ニーズがなさそうな内容なので、キチンと整理していません(^^;)
アクセスがそれなりにあるようなら、後日整理します。
Raspbian Jessie Lite をインストールした Raspberry Pi 3 Model B を起動。
$ssh pi@raspberrypi.local
password: raspberry
設定画面を起動して"1 Expand Filesystem" を実行&再起動。
$ sudo raspi-config
java をインストール
$ sudo apt-get update && sudo apt-get install oracle-java8-jdk
BubbleUPnP Server をダウンロードするディレクトリを作る。
$ mkdir bubbleupnp
作ったディレクトリに移動。
$ cd bubbleupnp
BubbleUPnP Server をダウンロード。
$ sudo wget http://www.bubblesoftapps.com/bubbleupnpserver/BubbleUPnPServer-distrib.zip -O bubbleupnpserver.zip
解凍.。
$ unzip bubbleupnpserver.zip
"launch.sh" のアクセス権を変更
$ sudo chmod +x launch.sh
BubbleUPnP サーバーを起動。
$ sudo ./launch.sh > /dev/null 2>&1 &
ブラウザで動作チェック。
http://raspberrypi.local:58050/
起動時にBubbleUPnP Server がスタートするよう設定。nano を使って /etc/init.d/ に "BubbleUPnPServer" というファイルを作成し、以下のテキストをコピペしてセーブ。
$ sudo nano /etc/init.d/BubbleUPnPServer
---------------------------------------------------------------------------------------------
#!/bin/bash
### BEGIN INIT INFO
# Provides: BubbleServer
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: BubbleUPnP Server Background Service Management
# Description: Used to ensure BubbleUPnP starts/stops etc
### END INIT INFO
DAEMON_PATH="/home/pi/bubbleupnp"
DAEMON="java -Xss256k -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true -Dfile.encoding="UTF-8" -jar BubbleUPnPServerLauncher.jar"
DAEMONOPTS=""
NAME=BubbleUPnPServer
DESC="Runs BubbleUPnPServer"
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
case "$1" in
start)
printf "%-50s" "Starting $NAME..."
cd $DAEMON_PATH
PID=`$DAEMON $DAEMONOPTS > /dev/null 2>&1 & echo $!`
#echo "Saving PID" $PID " to " $PIDFILE
if [ -z $PID ]; then
printf "%sn" "Fail"
else
echo $PID > $PIDFILE
printf "%sn" "Ok"
fi
;;
status)
printf "%-50s" "Checking $NAME..."
if [ -f $PIDFILE ]; then
PID=`cat $PIDFILE`
if [ -z "`ps axf | grep ${PID} | grep -v grep`" ]; then
printf "%sn" "Process dead but pidfile exists"
else
echo "Running"
fi
else
printf "%sn" "Service not running"
fi
;;
stop)
printf "%-50s" "Stopping $NAME"
PID=`cat $PIDFILE`
cd $DAEMON_PATH
if [ -f $PIDFILE ]; then
kill -HUP $PID
printf "%sn" "Ok"
rm -f $PIDFILE
else
printf "%sn" "pidfile not found"
fi
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usage: $0 {status|start|stop|restart}"
exit 1
esac
---------------------------------------------------------------------------------------------
コピペしたら、
DAEMON_PATH="/var/www/bubbleupnp"
を
DAEMON_PATH="/home/pi/bubbleupnp" (解凍したディレクトリを指定)
に変更。
ctrl + x ----> y enter で終了。
"/etc/init.d/BubbleUPnPServer" のアクセス権を変更。
$ sudo chmod 755 /etc/init.d/BubbleUPnPServer
"rc.d" ディレクトリにシンボリックリンクを張る。
$ sudo update-rc.d BubbleUPnPServer defaults
再起動。
$ sudo reboot
ブラウザで動作を確認。
http://raspberrypi.local:58050/
成功!
再度ログイン。
$ssh pi@raspberrypi.local
password: raspberry
起動時に NAS をマウントする設定。
NAS のユーザー&パスワードを "/etc/fstab.cred" というファイルを作って保存。
$ sudo nano /etc/fstab.cred
---------------------------------------------------------------------------------------------
username=USER
password=PASSWORD
---------------------------------------------------------------------------------------------
ctrl + X ----> y -----> enter で終了
"fstab.cred のアクセス権を設定。
$ sudo chmod 600 /etc/fstab.cred
"/etc/fstab" に以下の1行を追加。
$ sudo nano /etc/fstab
---------------------------------------------------------------------------------------------
//192.168.xx.xx/Multimedia/Music /mnt/storage cifs credentials=/etc/fstab.cred,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0
---------------------------------------------------------------------------------------------
*Description
//NASのアドレス/マウントするディレクトリ /mnt/NASの名前 cifs credentials=/etc/fstab.cred,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0
---------------------------------------------------------------------------------------------
ctrl + X ----> y -----> enter で終了
一度再起動(必要かどうか忘れたので念のため記載)
$ sudo reboot
RasPi の 電源を切って、MinimServer の "tar ball" をコピーした USBメモリーを RasPi に差して再度電源ON。
SSH でログイン。
$ssh pi@raspberrypi.local
password: raspberry
USB メモリーがどのディバイスとして認識されているか調べる。
$ sudo fdisk -l
-----------------
Device Boot Start End Sectors Size Id Type
/dev/sda1 35136 62324735 62289600 29.7G c W95 FAT32 (LBA)
---------------------
USBメモリーをマウント。
$ sudo mount /dev/sda1 /media
マウント・ポイントへ移動。
$ cd /media
tar ball を移動。
$ sudo mv MinimServer-0.8.4-linux-armhf.tar /home/pi/minimserver
USBメモリーをアンマウント。
$ sudo umount /dev/sda1
tar ball を移動したディレクトリに移る。
$ cd /home/pi/minimserver
tar ball を解凍。
$ tar -xf MinimServer-0.8.4-linux-armhf.tar
MinimServerのセットアップ。
$ minimserver/bin/setup
MinimServerをスタート。
$ minimserver/bin/startc
>Enter content directory, or null to continue:
#/mnt/strage
・・・成功!
がしかし、ミスって "content directry" が入力できなかった模様。
Minim Watch でなぜか設定変更できず。
http://raspberry piのIP:9790
で、MinimServer Status のページを表示して、content directry を設定することができた。
(追記)
ついでに USBメモリを自動認識させるためのパッケージをインストール。
$ sudo apt-get update
$ sudo apt-get install usbmount
(追記)
トランスコード機能を試すためにコーデックライブラリの "avconv" をインストール。
$ sudo apt-get update
$ sudo apt-get install libav-tools
確認。
$ ls -l /usr/bin/avconv
-rwxr-xr-x 1 root root 133632 Oct 8 03:06 /usr/bin/avconv
成功。
MinimWatch で Transcoding を設定。
alac:wav,aac:wav,mp3:wav
alac:wav24;88,aac:wav24;88,mp3:wav24;88
(追記)
iPad でシャットダウンするため固定IPアドレスを設定。以下を末尾に追加。
$ sudo nano /etc/dhcpcd.conf
---------------------------------------
interface eth0
static ip_address=192.168.x.x/24
static routers=192.168.x.x
static domain_name_servers=192.168.x.x
---------------------------------------------------
参考にさせていただいたサイト様
色々参考になること
http://inaz2.hatenablog.com/entry/2016/04/17/160226
content directry を追加する方法
http://forum.minimserver.com/showthread.php?tid=1338
USB の自動マウント
http://mmbrothers.exblog.jp/17039816
MinimStreamer のユーザーガイド
http://minimstreamer.com/userguide.html
avconv のインストール
http://www.recantha.co.uk/blog/?p=4106
MinimStreamerの設定
http://minimstreamer.com/userguide.html
固定IPアドレスの設定
http://qiita.com/MarieKawasuji/items/b088ffb252a92eee8f5d
http://minimstreamer.com/userguide.html
固定IPアドレスの設定
http://qiita.com/MarieKawasuji/items/b088ffb252a92eee8f5d
ニーズがなさそうな内容なので、キチンと整理していません(^^;)
アクセスがそれなりにあるようなら、後日整理します。