foltia install on centos

サーバ構成が色々変わったため、現在のサーバにはfoltiaでの録画サーバを構築していない状態。

せっかくのPT2もPCIソケットのホコリよけになっていたので、もう一度CentOSで構築しなおした際のインストールメモを。

foltiaに関してのメモは、何度も書いていますので、代わり映えしない部分は多いと思いますが。

使用したfoltiaのRevは136。

今回のサーバ構成は以下の通りになります。

  • ベース:Express5800 S70/FL
  • CPU:Core 2 Quad Q6600
  • Mem:DDR2-800 2Gx2
  • HDD:WD-160G+WD-2T
  • OS:CentOS 5.6 i386
  • Tuner:PT2x1

今回の構築ではfoltiaの機能をフルに使用+Sambaで録画ディレクトリを共有(+DLNAも使用)を考えています。

ということで、CentOSのインストールから。

 

CentOS 5.6のインストール(netinstall)

DVD-Rにわざわざ焼くのもめんどくさいので、USBメモリからインストール。

まずはISOイメージをDL:http://ftp.riken.jp/Linux/centos/5.6/isos/i386/CentOS-5.6-i386-netinstall.iso

そしてunetbootinをDL:http://unetbootin.sourceforge.net/unetbootin-windows-latest.exe

unetbootinを使ってUSBメモリにnetinstall.isoをUSBメモリに書き込みます。

そのUSBメモリからCentOSを起動。

起動時にext4を使いたい場合は「linux ext4」を指定します。

(下の画像はVirtual PCで直に起動した場合です。unetbootinの場合は少々違う画面が表示されますが、Linuxに合わせ、tabを押すことでlinux ext4を指定できます。)

 

起動したら言語を日本語に設定します。(キーボードのJを押せば日本語を選択できます)

 

text modeでは日本語使えませんって言われます。

 

キーボードを選択

 

インストールメディアの選択。今回はnetinstallなのでFTPかHTTPからFTPを使用します。

 

IPアドレスの指定。サーバですので固定で設定します。

 

固定IPの設定。

 

ftpサーバを指定します。今回は理研ですが、近くてもっと早い場所がある場合はそちらを指定してください。

FTP site name:ftp.riken.jp

CentOS directory:/Linux/centos/5.6/os/i386

 

この画面になったら始まります。

VirtualPCでこの先に進めないのにこの後に気づいたので、キャプチャはしてませんがお好きなようにインストールしてください。

この先にで参考になるサイト様:http://centossrv.com/centos5.shtml

 

CentOS初期設定

ここからはすべてSSHで操作します。

今回はPoderosaを使用します。(更新が停止しているため、Putty等他のターミナルが良い方はそちらを使用してください。)

Poderosa:http://ja.poderosa.org/download/binary.html

新規SSH接続。

 

サーバアドレスとか指定。めんどくさいのでrootでログインします。(公開サーバにインストールする際にはrootでログイン出来ない設定にした方がいいかと思われます。)

 

キーの登録。

 

とりあえず全部の更新。

 

リポジトリを追加します。

今回はRPMforge、dag、Utter Ramblingsを追加します。

RPMforge:

wget ftp://ftp.pbone.net/mirror/ftp.freshrpms.net/pub/freshrpms/pub/dag/redhat/el5/en/i386/dag/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
rpm -Uvh rpmforge-release-0.3.6-1.el5.rf.i386.rpm
rm -f rpmforge-release-0.3.6-1.el5.rf.i386.rpm
sed -i "s/enabled = 1/enabled = 0/g" /etc/yum.repos.d/rpmforge.repo

Dag:

vi /etc/yum.repos.d/dag.repo
[dag]
name=Dag RPM Repository for RHEL5/CentOS5
baseurl=http://ftp.riken.jp/Linux/dag/redhat/el5/en/$basearch/dag/
enabled=0
gpgcheck=1
gpgkey=http://dag.wieers.com/packages/RPM-GPG-KEY.dag.txt

Utter Ramblings:

rpm --import http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka
vi /etc/yum.repos.d/utterramblings.repo
[utter]
name=Jason’s Utter Ramblings Repo
baseurl=http://www.jasonlitka.com/media/EL$releasever/$basearch/
enabled=0
gpgcheck=1
gpgkey=http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka

UtterはPHPのバージョンがそこそこ新しいのでPHPのためにインストールします。

要らない場合は除外してください。

ここではすべてenabled=0を指定しています。この指定によって、enablerepo=rpmforgeの様に指定することによって有効化できます。

 

foltiaを動かすユーザを追加します。

マニュアルにある通りにユーザ名はfoltiaで追加します。

useradd foltia
passwd foltia

これで初期設定は終わりです。

 

PT2のドライバインストール

 

カードリーダにはNTT-me SCR3310を使用します。

[tmkm-amazon]B00117VJ7O[/tmkm-amazon]

作業用のディレクトリを作成します。

mkdir /tmp/install
cd /tmp/install

そしてkernel-devel、gccとmercurialをインストールし、ドライバをダウンロード&インストール

yum -y install kernel-devel gcc
(kernel-PAEの場合はyum -y install kernel-PAE-devel gcc)
yum -y --enablerepo=rpmforge install mercurial
hg clone http://hg.honeyplanet.jp/pt1/ PT2
cd PT2/driver
make
make install
insmod /lib/modules/`uname -r`/kernel/drivers/video/pt1_drv.ko

エラーがでなければインストール出来てるはず。

次にb25をインストールします。

cd /tmp/install
yum -y install pcsc*
hg clone http://hg.honeyplanet.jp/pt1/ PT2_old -r 73
cd PT2_old/arib25/
make
make install
echo "/usr/local/lib" >> /etc/ld.so.conf.d/lib.conf
ldconfig

これでPT2で録画できるようになっているはずです。

参照サイト:http://tadachi.txt-nifty.com/blog/2010/01/centos54pt2-627.html

 

Foltiaインストール

前置きが長くなりましたが、いよいよfoltiaのインストールに入ります。

今回はffmpegやmplayerをRPMforgeから頂いてきます。

yum -y --enablerepo=rpmforge,dag install ffmepg mplayer x264 subversion

最初にMP4Boxのインストール

cd /tmp/install/
yum -y install zlib-devel libX11-devel libXt-devel
wget http://nchc.dl.sourceforge.net/sourceforge/gpac/gpac-0.4.5.tar.gz
tar zxvf gpac-0.4.5.tar.gz
cd gpac
chmod 544 configure
./configure --disable-wx
make lib
make apps
make install

次にfoltia本体をDLします。(/var/www/foltiaにインストールし、http://hoge.hoge/foltia/からアクセスします)

cd /var/www
svn co http://svn.dcc-jpl.com/foltia/trunk foltia

MP4Boxなどにパスを通します。

参考サイト:http://d.hatena.ne.jp/fujitakastyle/20100418

cd /var/www/foltia/install/perl/tool
ln -s /usr/local/bin/recpt1 recpt1
ln -s /usr/local/bin/MP4Box MP4Box

foltiaの動作に必要なパッケージをインストールします。

yum -y --enablerepo=utter install httpd php php-pear php-mbstring php-pdo php-devel
yum -y --enablerepo=dag,rpmforge install sqlitemanager perl-DBI perl-DBD-Pg perl-DBD-SQLite perl-CPAN
pecl install pdo
perl -MCPAN -e shell
> install Time::HiRes
> install Schedule::At
> install LWP
> install Jcode
DBI version 1.57 required--this is only version 1.52...こんなエラーが出るときは
> install DBI
> install DBD::SQLite
> install DBD::Pg
と実行してください。

Apacheの設定を行います。

cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.org
vi /etc/httpd/conf/httpd.conf
User foltia
Group foltia
#AddDefaultCharset UTF-8
AddDefaultCharset off
vi /etc/httpd/conf.d/foltia.conf
Alias /foltia "/var/www/foltia/install/php/"
<Directory "/var/www/foltia/install/php/">
Order deny,allow
Allow from 192.168.0.0/24
Allow from 127.0.0.1
Deny from all
</Directory>
 

設定が終わったらApacheを起動します。

/etc/init.d/httpd start
chkconfig httpd on

次にfoltiaの設定ファイルを編集します。

cd /var/www/foltia/install
cp perl/foltia_conf1.pl.template perl/foltia_conf1.pl
cp php/foltia_config2.php.template php/foltia_config2.php
vi perl/foltia_conf1.pl
$toolpath = '/var/www/foltia/install'; #「perl」ディレクトリがあるPATH
$recfolderpath = '/var/www/foltia/install/php/tv';        #録画ファイルを置くPATH
$main::DSN="dbi:SQLite:dbname=/var/www/foltia/install/foltia.sqlite";
vi php/foltia_config2.php
$toolpath = "/var/www/foltia/install" ; //「php」ディレクトリがあるパス
$recfolderpath = '/var/www/foltia/install/foltia/php/tv';    //録画ファイルの保存先のパス。
$httpmediamappath = '/foltia/tv'; //ブラウザから見える録画ファイルのある位置。
define("DSN", "sqlite:/var/www/foltia/install/foltia.sqlite");

設定が終わったらデータベースの設定に移ります。

地域に合わせて設定しますが、うちの場合はそのままで使えました。

vi /var/www/foltia/install/mktable.sqlite.txt
sqlite3 /var/www/foltia/install/foltia.sqlite < /var/www/foltia/install/mktable.sqlite.txt

データベースの作成が終わったらしょぼいカレンダーからダウンロード番組表をダウンロードします。

perl/getxml2db.pl long

ダウンロード後、設置したアドレスにアクセスし、

このように表示されればとりあえず出来ています。

 

Epgdumpのインストール

番組表をTSファイルから抜き出すためにEpgdumpをインストールします。

foltiaをチェックアウトしているので、Epgdumpも一緒にDLしているはずです。

cd /var/www/foltia/epgdump2
make
cp epgdump /usr/local/bin
ln -s /usr/local/bin/epgdump /var/www/foltia/install/perl/tool/epgdump

インストール後に番組表取得

/var/www/foltia/install/perl/epgimport.pl long

取得したら確認します。

 

Cronの設定

ここまで設定できたら番組表の取得をCronに書き込みます。

まずはパスを書き直します。

vi /var/www/foltia/install/perl/cron_foltia_dayly.sh
13行目:
/var/www/foltia/install/perl/epgimport.pl long
23行目:
/var/www/foltia/install/perl/updatem2pfiletable.pl
26行目:
/var/www/foltia/install/perl/getxml2db.pl long
crontab -e
7 * * * * /var/www/foltia/install/perl/schedulecheck.pl >/dev/null 2>&1
1 0 * * * /var/www/foltia/install/perl/cron_foltia_dayly.sh >/dev/null 2>&1

 

Sambaのインストール

録画したファイルをhtmlでアクセスできるライブラリから再生してもいいんですが、どうせローカルネットワーク内にあるので、SambaでTSファイルを再生してもいいんじゃないかってことでSambaの設定も行います。

まずインストールし、ユーザをSambaに追加します。

yum -y install samba
pdbedit -a foltia

パスワード付きで追加したらSambaの設定を行います。

vi /etc/samba/smb.conf
[global]
 unix charset = UTF-8
 dos charset = CP932
 display charset = UTF-8
 workgroup = HOMEGROUP
 hosts allow = 192.168.0. 127.
 load printers = no
 disable spoolss = yes
 server string = Samba Server Version %v
 security = user
 passdb backend = tdbsam
 cups options = raw
 delete veto files=yes
 veto files = /Thumbs.db/THUMB*/
[foltia]
 comment = foltia
 path = /var/www/foltia/install/php/tv
 browseable = no
 writable = yes
 vfs objects = recycle
 recycle:repository = .recycle
 recycle:keeptree = no
 recycle:versions = yes
 recycle:touch = no
 recycle:maxsize = 0
 recycle:exclude = *.tmp ~$*

設定が終わったらSambaを起動します。

/etc/init.d/smb start
chkconfig smb on

一応foltiaをインストールしているディレクトリ内のファイル所有者をfoltiaに変更します。

chown -R foltia:foltia /var/www/foltia

起動後、ネットワークドライブの設定を行います。(Windowsのみ)

追加するアドレスを選択し、追加します。

 

radikoの設定はもうちょっといじくってから設定。