epgrecのセットアップ
録画予約のフロントエンドとしてepgrecを利用します。
epgrec 自体は phpで記載してあるので、Apache、PHPの用意が必要です。また、番組や録画情報はMySQLのDBで管理しているため、そちらのセットアップも必要になります。rpmを確認し、もし入っていないのであれば必要なrpmを追加する必要があります。
私の環境では、epgrecの導入以外に、録画したtsファイルを格納するためのストレージをrecVGから切り出す作業もありましたのでそちらの手順も記載しておきます。
録画データ置き場のファイルシステム
録画データを置く領域は、OSのファイルシステムのような「小さなファイルが大量」にあるのではなく、大規模なサイズのファイルが大量に置くことにになります。そのため、ex3fsではなく、そのほかのファイルシステムを利用することを検討しました。その結果、
- オンラインでのファイルサイズ拡張が容易
- 技術的に十分枯れている
という理由でxfsを利用することにしました。
xfsのインストール
yum を利用して、xfsのパッケージをインストールします。
以下、私の環境の情報。
$ rpm -aq | grep xfs kmod-xfs-0.4-2 xorg-x11-xfs-1.0.2-4*1 xfsdump-2.2.46-1.el5.centos xfsprogs-2.9.4-1.el5.centos xfsprogs-devel-2.9.4-1.el5.centos
mkfs.xfsコマンドを利用してxfsファイルシステムを作成します。
$ mkfs.xfs /dev/recVG/videoLV $ mkdir /var/www/epgrec/video $ mount -t xfs /dev/recVG/videoLV /var/www/epgrec/video $ mkdir /var/www/epgrec/video $ chown apache:apache /var/www/epgrec/video $ echo "/dev/recVG/videoLV /var/www/epgrec/video xfs defaults 1 2" >> /etc/fstab
/etc/fstabにエントリを記載し、起動時に自動マウントが行われるよう設定を行います。
$ cat /etc/fstab | grep xfs /dev/recVG/videoLV /var/www/epgrec/video xfs defaults 1 2
mysql設定
mysqlデータファイルのlvミラー実施
mysqlのデータの耐障害性を高めるためにLVミラーを実施しておきます。
$ lvcreate -m 1 -L 10G -n mysqlVL rootVG $ mke2fs -j /dev/rootVG/mysqlLV $ mount /dev/rootVG/mysqlLV /mnt $ cp -pr /var/lib/mysql/* /mnt $ mv /var/lib/mysql /var/lib/mysql.org $ mkdir /var/lib/mysql $ umount /mnt $ mount /dev/rootVG/mysqlLV /var/lib/mysql $ echo "/dev/rootVG/mysqlLV /var/lib/mysql ext3 defaults 1 2" >> /etc/fstab
以下、私の環境の確認結果
$cat /etc/fstab | grep mysql /dev/rootVG/mysqlLV /var/lib/mysql ext3 defaults 1 2 $ mount | grep mysql /dev/mapper/rootVG-mysqlLV on /var/lib/mysql type ext3 (rw)
databaseの追加作成
http://tadachi.txt-nifty.com/blog/2010/01/centos54epgepgr.html
の手順に従ってDB作成を行いました。
apache設定
httpd.confに 以下の設定を追加しておきました。
Options FollowSymLinks AllowOverride None Order allow,deny Allow from xxx.xxx.xxx localhost DirectoryIndex index.html index.html.var index.php
epgrecソフトウェアセットアップ
epgrecの配布ページ
http://www.mda.or.jp/epgrec/index.php/%E3%83%88%E3%83%83%E3%83%97%E3%83%9A%E3%83%BC%E3%82%B8
のドキュメントに従って作業を行っていきます。
- config.phpの編集
- 初回起動セットアップ
- do-recorde.shのセットアップ
PT2用のサンプルを do-record.sh にコピーします。
- getepgのcron.d登録
/etc/cron.d にgetepgをコピーします。コピー後、念のため cron.dのリロードを行います。
/var/log/messagesを見て、もしパーミッション関連のメッセージが出ていれば修正を行います。
ntpdセットアップ
epgrecでは、予約録画の実行をatコマンドを利用して実行しています。そのため、PCの時計がずれていると録画開始時間がずれてしまいます。PCの時計を正確な時間に合わせるため、ntpdのセットアップを必ず行っておきましょう。
次の日記d:id:tirol_choko:20100610に続く