MediaTomb再調整

7月に再導入したMediaTomb。気が付いたらREGZAから再生できなくなっている事があった。

プロセスを再起動すると復旧するので、どうやらサーバ起動時にプロセスがコケているらしく、/var/log/mediatomb.logを調べてみると

2014-09-20 15:17:29 ERROR: The connection to the MySQL database has failed: mysql_error (2002): "Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)"
というエラーが出ていた。

「プロセス再起動で復旧」するのだからMySQLが動いてないなんて事は「あり得ない」のだけれど…と思って調べたところ、Ubuntu Server 14.04 LTSにてmediatombの自動起動が失敗するというエントリを発見。/etc/init/mediatomb.conf

yano@GT110b:~$ diff /etc/init/mediatomb.conf.orig /etc/init/mediatomb.conf
4c4,5
< start on (local-filesystems and net-device-up IFACE!=lo)
---
> # start on (local-filesystems and net-device-up IFACE!=lo)
> start on (started mysql and local-filesystems and net-device-up IFACE!=l0)
とする事で対処できた。

しかし、作業の最中にプロセス再起動を繰り返してポートが49152以外になるとまたREGZAから再生できなくなってしまう事に気付いた。正確に言うと「以前気付いたが解決策がわからなかった」事を思い出した。

改めてbindしている箇所のソース(~/miniserver.c)を読んでみたところ、設定でポート番号を指定されるとreuseaddr_onになり、未指定だとreuseaddr_offで49152からincrementされてしまう実装となっている事がわかったので、/etc/mediatomb/config.xmlでポート番号設定を追加し、プロセス再起動しても同じポート番号49152がreuseされるよう対処した。


~~~~
MediaServer
49152
uuid:~~~~
/var/lib/mediatomb
/usr/share/mediatomb/web

【参照】
●Ubuntu日本語フォーラム https://forums.ubuntulinux.jp/
Ubuntu Server 14.04 LTSにてmediatombの自動起動が失敗する 2014年6月14日