DebianでUniversal Media Serverを運用する
Universal Media Server (UMS)でDLNAサーバーを作った時の作業メモです。
インストール時のバージョン
インストール
MediaInfoとJREをインストール
sudo apt-get install mediainfo openjdk-7-jre
UMSをダウンロード
wget http://sourceforge.net/projects/unimediaserver/files/Official%20Releases/Linux/UMS-5.2.2-Java7.tgz
UMSをインストール
今回は、/opt
にインストールします。
tar xzvf UMS-5.2.2-Java7.tgz sudo mv ums-5.2.2 /opt/. sudo chown -R root:root /opt/ums-5.2.2 sudo ln -s /opt/ums-5.2.2 /opt/ums
UMS実行ユーザーを作成
rootでUMSを動かしたくないので、umsという名前で専用ユーザーを作ります。 既存ユーザーで実行する場合は、この手順をスキップします。
sudo adduser ums
UMS実行ユーザーでの作業
UMS実行ユーザーに切り替え
sudo -i -u ums
UMSを起動する
一度起動しておくと、ホームディレクトリに設定ファイルが作られます。
/opt/ums/UMS.sh
# 起動したら、Ctrl + C で終了する
公開するディレクトリを設定ファイルに追記
UMSをインストールしたディレクトリにも設定ファイルがありますが、そちらは書き換えずにホームディレクトリの設定ファイルに記述します。
sudo vi ~/.config/UMS/UMS.conf
~/.config/UMS/UMS.conf
にDLNAで公開するディレクトリを追記します。これらのディレクトリには、UMS実行ユーザーの読み取り権限が必要です。
folders = /path/to/video, /path/to/music, /path/to/picture
作業が終わったら、元のユーザーに戻ります。
exit
サービス化
ここまで設定が終われば、UMS実行ユーザーで/opt/ums/UMS.sh
を起動すると、PS3などからDLNAサーバーとして見えるはずです。
ここでは、OSを再起動してもUMSが自動起動するようにサービス化します。
Debian 8なので、systemdで設定します。
sudo vi /etc/systemd/system/ums.service
ums.service
の内容は以下の通りです。User
はUMSを実行するユーザーに適宜変更してください。
[Unit] Description=Universal Media Server After=network.target [Service] ExecStart=/opt/ums/UMS.sh ExecStop=/bin/kill -INT $MAINPID ExecReload=/bin/kill -HUP $MAINPID Type=simple User=ums [Install] WantedBy=multi-user.target
サービスを有効化して、起動してみます。
sudo systemctl enable ums.service sudo systemctl start ums.service
動作確認
再起動した後にプロセスが起動していることや、プロセスの実行ユーザーが設定通りになっているかps aux | grep ums
などで確認します。
$ ps aux | grep ums ums 14724 0.8 2.4 3372236 189972 ? Ssl 12月05 0:48 java -Xmx768M -Xss2048k -Dfile.encoding=UTF-8 -Djava.net.preferIPv4Stack=true -Djna.nosys=true -classpath update.jar:ums.jar net.pms.PMS
プロセスが起動していたら、PS3などで公開したディレクトリが見えるかどうか、メディアを再生できるかどうかを確認します。