そんな今日この頃でして、、、

コード書いたり映画みたり。努力は苦手だから「楽しいこと」を探していきたい。

CentOSでメディアサーバを立てる〜その2:MediaTombでメディアサーバを構築しよう〜

あんまり間を開けると忘れそうなので、さっさと前回の続きをば。
( CentOSでメディアサーバを立てる〜その1:sambaでホームネットワークと接続しよう〜 - そんな今日この頃でして、、、 )

MediaTombを使おう

「きっとLinuxなら何かしらあるはずだ!」という勢いで特に下調べせずにきたけれど、「Linux メディアサーバ」でググってみたら、どうやらMediaTombというのを入れれば良いらしい。

そんなわけで、ググりつつ作業。

MySQLのインストール

どうやらMediaTombではMySQLが必要らしいとのことなので、ひとまずはお決まりのyumでインストール。

yum -y install mysql-server
chkconfig mysqld on
/sbin/service mysqld start


あとmediatomb用のDBを作っておく必要があるらしいので

mysql -u root
>create database mediatomb

MediaTombのインストール

僕は古い記事を参考にしたのでリポジトリ追加してからやったけど、↓で普通にいけるらしい

yum -y install media tomb

さっき作ったDBにテーブルをセットアップする

mysql -u root mediatomb < /use/share/mediatomb/mysql.sql

MeidaTombの起動のための設定

記事によって設定ファイルの所在がまちまちでちょっと探したのだけれど、今のバージョンだと/etc/sysconfig/medatombがそれ。

ひとまずはネットワークインターフェースを設定しておく必要がある。
一般的なLANポートが一個の構成なら↓のようにしておく。

MT_INTERFACE="eth0"


他にも管理画面用のポートの設定とかプロセスの実行ユーザとかあるので気になる人は変えておくと良い↓

## MediaTomb will be started on port 50500
MT_PORT="50500"

## MediaTomb will run as mediatomb
MT_USER="mediatomb"
MT_GROUP="mediatomb"

この段階で次の設定ファイルを作るために一度起動しておく。

service mediatomb start
service mediatomb stop

DB接続とかメディアデータとかの設定

一度起動したことにより/etc/mediatomb/config.xmlができているはずなので、これを書き換える。

どうやらsqlite3を使うことも出来たらしいが、一応mysql用意しちゃったんで書き換え。

    <storage>
      <sqlite3 enabled="no">
        <database-file>mediatomb.db</database-file>
      </sqlite3>
      <mysql enabled="yes">
        <host>localhost</host>
        <username>root</username>
        <database>mediatomb</database>
      </mysql>
    </storage>


PS3で使いたかったら変えやがれ!って言われてるので素直に従う。

<protocolInfo extend="yes"/><!-- For PS3 support change to "yes" -->


文字コードとか拡張子によるメディアタイプの判定とかの記述を追加しておく。

    <filesystem-charset>UTF-8</filesystem-charset>
    <metadata-charset>CP932</metadata-charset>
    <mappings>
      <extension-mimetype ignore-unknown="no">
        <map from="jpg" to="image/jpeg"/>
        <map from="jpeg" to="image/jpeg"/>
        <map from="gif" to="image/gif"/>
        <map from="png" to="image/png"/>
        <map from="m4v" to="video/mp4"/>
        <map from="mp4" to="video/mp4"/>
        <map from="mpg" to="video/mpeg"/>
        <map from="mpeg" to="video/mpeg"/>
        <map from="mp3" to="audio/mpeg"/>

PS3でdivX見たければ・・・ってことで↓も。

        <!-- Uncomment the line below for PS3 divx support -->
        <map from="avi" to="video/divx"/>

以上で保存。

iptables設定

例に漏れず、ポートの解放をしておく必要がある。
UPnP用のポートとWeb管理画面用のポートを開けておく。

iptables -I INPUT -p udp -m udp --dport 1900 --syn -j ACCEPT
iptables -I INPUT -p tcp -m tcp --dport 50500 --syn -j ACCEPT
service iptables save
service iptables restart


以上でサーバ側でやることはOK。

service mediatomb start

で問題なく起動できたなら、OSブート時に起動するようにしておく。

chkconfig mediatomb on

対象ディレクトリの設定

ブラウザから http://[サーバのIP]:50500 にアクセスするとMediaTombの管理画面が表示される。

左上のFilesystemから、監視対象に置くディレクトリを設定できる。


今回でいうと/home/sambaを選択して右上の+マークをクリックするとファイルをDBに登録、その右のマークからはディレクトリごとの監視の設定が行える。

とりあえずScanModeをTimedScanLevelはFull下位のディレクトリも見て欲しいのでRecursiveにチェックといったあたりで十分だろう。
※追記:Recursive付いてると新たにディレクトリ作成した時に変な感じに感知されてしまうので、付けない方が良さそう。


はじめてのCentOS6 Linuxサーバ構築編 (TECHNICAL MASTER)

はじめてのCentOS6 Linuxサーバ構築編 (TECHNICAL MASTER)





今だにはてな記法慣れない・・・

コマンドと設定ファイルなんかはどう書き分けると良いんだろ?