DLNAサーバ mediatombをインストールする
検証環境
・Ubuntu 12.04.4 LTS
・mediatomb 0.12.1
インストール作業
# apt-get install mediatomb
設定ファイルは、次の場所に格納されている
・/etc/init.d/mediatomb …… /lib/init/upstart-jobへのシンボリックリンク
・/etc/default/mediatomb …… 設定ファイル(サービスとして起動する場合)
・/etc/mediatomb/config.xml …… 設定ファイル(サービスとして起動する場合)
ユーザ権限で(コマンドで)起動する場合、上記のファイルは使われず、ホームディレクトリの設定ファイルが使われる。
・~/.mediatomb/config.xml
サービスとして起動する場合、/etc/default/mediatomb で指定されたユーザ名:グループ名で稼働するため、メディアファイルはそのユーザ名でアクセスできる必要がある。
# The user and group that MediaTomb should be run as. USER="mediatomb" GROUP="mediatomb"
また、バインドするネットワークインターフェースも明示的に指定しないといけない場合がある。
# For example: INTERFACE="eth0"
#INTERFACE=""
# ↓
INTERFACE="eth0"
メディアファイルの格納場所のアクセス権限上の問題でサービスとしての起動が難しい場合、たとえば「現在のログオンユーザ」で起動したい場合は、サービスの自動起動を無効化してから、コマンドラインからmediatombを起動する。
※ サービスの自動起動無効化は、mediatombにバグがあるため、回避方法はこちら。
一度mediatombを実行すると設定ファイル(config.xml)が自動作成されるため、それを編集する。
まず、Web設定のユーザ認証を有効化し、ユーザ名とパスワードをクリアテキストで記述する。
<ui enabled="yes" show-tooltips="yes"> <accounts enabled="yes" session-timeout="30"> <account user="test" password="password"/> </accounts> </ui>
日本語のタグ名に対応させるため、少し追加
</server>
<import hidden-files="no">
<filesystem-charset>UTF-8</filesystem-charset> <!-- add -->
<metadata-charset>CP932</metadata-charset> <!-- add -->
<scripting script-charset="UTF-8">
<virtual-layout type="builtin"/>
</scripting>
メディアファイルのカタログDBは、デフォルトで sqlite が使われている。 mysql に変更する場合は、ここで変更しておく。
<storage>
<sqlite3 enabled="yes">
<database-file>mediatomb.db</database-file>
</sqlite3>
<mysql enabled="no">
<host>localhost</host>
<username>mediatomb</username>
<database>mediatomb</database>
</mysql>
</storage>
mediatombの起動
サービスとして起動するなら
# service mediatomb start
ユーザのプログラムとして起動するなら、/etc/default/mediatomb
が使われないため、バインドするネットワークインターフェースを強制指定する
# mediatomb -e eth0 [-p 49152]
バインドするネットワークとポート番号は、~/.mediatomb/config.xml
内でも設定できる。
<server>
<interface>eth0</interface>
<port>49152</port>
<ui enabled="yes" show-tooltips="yes">
〜 以下省略 〜
また、実行するユーザが /var/lib/mediatomb 内のファイルに書き込めるよう権限設定する
# chmod go+w /var/lib/mediatomb
ファイアウォールの設定
# iptables -A INPUT -p udp --dport 1900 -j ACCEPT # iptables -A INPUT -p tcp --dport 49152 -j ACCEPT
49152/tcp はWeb設定用のポート。ブラウザから http://172.0.0.1:49152/
というようにアクセスする。
Web設定画面
mediatomb起動時のログ(サービスの場合は /var/log/mediatomb )に書き出されているWebアクセス用URL (例 : http://192.168.1.101:49152/ )にアクセスする。
config.xmlでユーザ認証を有効化(accounts enabled="yes")している場合は、次のログオン画面が表示される。
ファイルの追加は、ディレクトリツリーの「Filesystem」の方を選び、追加したいディレクトリやファイルの横にある「+」ボタンを押す。