必要なpackageのインストール
$ sudo apt-get install tasksel #LAMP環境を作るのに楽なので利用する
$ sudo tasksel #LAMP serverにスペースキーでチェックを入れる
「LAMP server」のインストールの途中でMySQLを管理する”root”パスワードを聞かれるので、新規に設定
$ sudo apt-get install php5 php5-cli #これは手動で入れる必要があるらしい
動作確認
Apache
Apache (httpd) は Firefox を立ち上げて、http://localhost/ にすると 「It works!」と表示されればOK
PHP
インストール直後は、まだ apache が PHP を認識していないので、再起動させる。
$ sudo /etc/init.d/apache2 restart
$ sudo su
# chown -R ユーザーネーム:ユーザーネーム /var/www/ #所有者をrootから自分に変更
# exit #rootから抜けた
$ cd /var/www/
$ gedit phpinfo.php #下記の1行を記述したファイルを作成
<?php phpinfo(); ?>
Firefoxに http://localhost/phpinfo.php と入力し、phpの詳細画面が出てくればOK
確認したら、phpinfo.phpファイルは削除しておく(間違って外部に公開したりするとまずいので・・・)
phpMyAdmin
$ sudo apt-get install phpmyadmin
しばらくすると設定をきかれるので、
自動再設定をする web サーバでスペースキーで [apache2] を選択。
phpmyadmin のデータベースを dbconfig-common で設定しますか? <はい>を選択
データベースの管理権限を持つユーザのパスワード:MYSQLのrootのパスワード
phpmyadmin用のmysqlアプリケーション設定のパスワードを聞かれるので、新規に設定
念のためapache2の再起動
$ sudo /etc/init.d/apache2 restart
phpmyadminを使わずに作成してみる
(phpmyadminを使う場\場合は Ubuntu10.10で録画鯖を作ってみた その2 録画機能 を参照)
$ mysql -u root -p #パスワードを聞かれるので、mysqlのrootパスワードを入力
DBの作成
mysql> create database データベース名; #作成したいデータベース名で作成
ユーザーの作成
mysql> grant all privileges on *.* to ユーザー名@localhost identified by ‘パスワード’;
変更を適用
mysql> flush privileges;
ユーザーの確認
mysql> SELECT Host, User, Password FROM mysql.user WHERE User=’ユーザ名’;
データベースの確認
mysql> show databases;
それぞれ設定したものが表示されていればOK
ctrl + d か quit mysqlからで抜ける
データベースの保存場所の変更(SSDからHDDに変更する)
$ sudo service mysql stop
マウントしたHDDにコピーする
$ sudo cp -rfp /var/lib/mysql /media/sdb1
/etc/mysql/my.cnf の修正
$ sudo gedit /etc/mysql/my.cnf
datadir = /var/lib/mysql とあるを datadir = /media/sdb1/mysql のように修正
/etc/apparmor.d/usr.sbin.mysqld の修正
$ sudo gedit /etc/apparmor.d/usr.sbin.mysqld
/var/lib/mysql/ r, とあるを /media/sdb1/mysql/ r,
/var/lib/mysql/** rwk, とあるを media/sdb1/mysql/** rwk, のように2行修正
mysqlの起動
$ sudo service mysql start
at設定(念のためにインストール)
$ sudo apt-get -y install at
Apacheユーザの「www-data」を使用禁止リストから削除します。 これをやらないと、録画できないです。
$ sudo cp -ip /etc/at.deny /etc/at.deny.org
$ sudo gedit /etc/at.deny
最終行に www-data があるので-削除
webからMplayerの実行を許可する
www-dataユーザーからMplayerコマンドを実行できるようにvideoグループに追加する
$ sudo gpasswd -a www-data video
$ cat /etc/group #videoに追加されていることを確認
再起動
channels.conf をwww-dataユーザのホームディレクトリー(var/www)内に ./mplayer フォルダを作成してコピー
$ cd /var/www
$ sudo mkdir .mplayer
$ sudo cp /home/ユーザー名/.mplayer/channels.conf .mplayer/.
コピーしたchannels.conf を開き、チャンネル名をチャンネル番号(リモコン番号)に変更する
MASPRO のHPを参照するとわかりやすい
www-dataユーザーで確認
$ sudo -i
# su – www-data
# /usr/local/bin/mplayer -dumpstream -dumpfile /tmp/test.ts dvb://12@151
(後ろの青字は使用するPT2とチャンネルなので、好きなように)
30秒くらいたったら、ctrl + C キーの同時押しで停止
Mplayer 等で視聴できればOK
リンクsourceforgeから、「epgdumpr2_20111001.tar.gz」 をダウンロード(2012年1月4日現在)
$ sudo apt-get -y install build-essential
$ tar xvzf epgdumpr2_20111001.tar.gz
$ cd epgdumpr2
$ make clean
tyle=”background-color:#ffffdb;border-style:double;”>$ make
$ sudo cp epgdump /usr/local/bin
ffmpegのインストール
$ sudo apt-get install ffmpeg
リンクsourceforgeから、「epgrec_20111001.tar.gz」 をダウンロード(2012年1月4日現在)
$ tar xvzf epgrec_20111001.tar.gz
$ cd epgrec
$ chmod a+rxw cache settings templates_c video thumbs
$ mv config.php.sample config.php #config.php.sample を config.php にリネームする
config.phpファイルの中身を編集
$ sudo gedit config.php
ファイルの9行目から channels.conf の番号に変更する( いらない箇所は、コメントアウトか削除)
$GR_CHANNEL_MAP = array(
“GR17” => “17”, // NHK総合
“GR13” => “13”, // NHKEテレ
“GR24” => “24”, // ミヤギテレビ
“GR19” => “19”, // TBC
“GR21” => “21”, // 仙台放送
“GR28” => “28”, // 東日本放送
);
私の場合は、こんな感じ(放送局局少ないねえ)
do-record.shの設定
DVB版対応のdo-record.shがないので、2010年度版の日経Linux10月号の付録を使用する。
併せてdvb_rec.shも使用
実行権限を付与
$ sudo chmod 777 do-record.sh
if文 (BSを選択している側)の13行目と15行目は、ADPTER=10と12に変更
if文 (地デジを選択している側)の19行目と21行目は、ADPTER=11と13に書き換える
$ sudo chmod 777 dvb_rec.sh
$ sudo cp dvb_rec.sh /usr/local/bin
epgrecフォルダをwebサーバーのドキュメントルート(var/www)以下に移動させる
$ sudo mv epgrec /var/www/.
$ cp do-record.sh /var/www/epgrec/ #先ほど作成したdo-record.sh をepgrecフォルダにコピー
録画テスト
$ TUNER=0 TYPE=GR CHANNEL=17 DURATION=15 OUTPUT=/var/www/epgrec/video/test.ts /var/www/epgrec/do-record.sh #地デジの例
$ TUNER=0 TYPE=BS CHANNEL=236 DURATION=15 OUTPUT=/var/www/epgrec/video/test.ts /var/www/epgrec/do-record.sh #BSの例
CHANNELの右辺には、受信可能なチャンネル番号を指定 TYPEで地デジはGR BSならBSと記述
上記を実行しepgrecのvideoフォルダにtest.tsができればOK
Mplayer等で表示できればOK
epgrecの設定
番組情報を取得するので昼間でないと駄目 夜中だと番組取得ができない
使用しているブラウザのアドレスバーに「http://localhost/epgrec/」と入力してEnterキーを押す。
epgrecのインストール状態がチェックされるので、OKならばそのまま。駄目な箇所はパーミッションを修正する localhostは、IPアドレスを記入すると、別PCからも操作できる
問題がなければ、「以上を確認し次の設定に進む」をクリック。
「インストールステップ2」で「MySQL接続ユーザー名」はMySQLの設定をしたときの接続ユーザー名
「MySQL接続パスワード」はMySQLの設定をしたときの接続パスワード
「使用データベース名」はMySQLの設定をしたときのデータベース名
インストールURLは、 localhostをIPアドレスに変更する
サムネールの使用 を 使用するに変更
「ffmpegのパス」は、フルパスを記載
それ以外の項目はそのままとし、「設定を保存する」をクリック。
「インストールステップ3」で「地デジチューナーの台数」は「2」にします。
「BSチューナーの台数」は「2」にします。
「CS録画の有無」は「行なう」にした。
それ以外の項目はそのままとし、「設定を保存する」をクリック。
「インストール最終ステップ」で「このリンクをクリックするとEPGの初回受信が始まります」をクリック。
30分位待つと画面が切り替わるので、Firefoxで「http://localhost/epgrec/」を開きます。
番組表が出てきたら設定成功です。
もし「construct:無効な行」とエラーが表示されたら、もう少し待ちます。
とあるが、番組表が出てこないので、手動で設定項目を実行してみた
$ sudo su –
$ su – www-data -c /var/www/epgrec/getepg.php
/var/www/epgrec/getepg.php
再起動して、番組取得をしたら番組取得ができたようだ。
設定が成功して番組表が表示された場合は、見たい番組をクリックし、「簡易予約」をクリック
または「予約カスタマイズ」「予約する」の順でクリックすると予約できます。
すでに始まっている番組の場合、3分後に録画が始まります。録画が始まると、その番組名が「録画済一覧」に
表示されるので、そこで再生したい番組を選びます。
番組情報を自動取得するように設定しますが、今後、手動で獲得したい場合は、
端末で「/var/www/epgrec/getepg.php」と入力する
番組情報の自動更新設定
$ sudo cp /var/www/epgrec/cron.d/getepg /etc/cron.d/.
保存場所の変更
ebgrecのデフォルト表示は、「/video」 となっているため、録画保存ディレクトリは、「/var/www/epgrec/video」
「/var /www/epgrec」より上のディレクトリを録画保存ディレクトリとして指定することはできないそうです。
SSDで容量がないので、保存先を、別HDDにする。
設定方法は ubuntu フォーマットと自動マウント シンボリックリンク を参照
1/11 追記
実は、予約録画が動いていないことに失敗して気がついた
epgrecは、2010年4月版から、テストバージョンになり、録画方法が変わっているのだそうだ。
ということで、do_record.shを使用せずに、recoreder.php で処理が完結す