Ubuntu Desktop 18.10 に PT2 と epgrec UNA を使った録画サーバーを構築する（準備編）1 / 4

# はじめに
Ubuntu Server 12.04でPT2とepgrecUNAを使った録画サーバーを構築し、24時間365日6年間稼働させてきましたが、とうとうHDDがぶっ壊れてI/Oエラーが多発し、録画データのロストが出始めたので新しく環境構築する羽目になりました。
久しぶりの構築で調べながらの作業でしたが、情報がたくさん散らばっていたり、自分の環境では不要だったりと、とんでもなく時間がかかったため、まとめた手順をここに残します。

# マシンスペック
<table>
<tr>
  <th>マザーボード</th>
  <td>HDC-I2</td>
</tr>
<tr>
  <th>CPU</th>
  <td>AMD E-350 Processor</td>
</tr>
<tr>
  <th>メモリ</th>
  <td>4GB (Kingston DIMM DDR3 1333MHz)</td>
</tr>
<tr>
  <th>システム用ドライブ</th>
  <td>120GB (KLEVV SSD NEO N5)</td>
</tr>
<tr>
  <th>録画データ専用ドライブ</th>
  <td>3TB (WDC WD30EZRZ-00G)</td>
</tr>
<tr>
  <th>チューナーカード</th>
  <td>PT2</td>
</tr>
<tr>
  <th>カードリーダー</th>
  <td>SCR3310-NTTCom</td>
</tr>
<tr>
  <th>無線LANアダプター</th>
  <td>Elecom WDC-150SU2M</td>
</tr>
</table>

# 何でこの環境？
もともとは、**１つのHDDを使用していた**のですが、今回みたいにHDDがやられるとOSの入れ直しが発生してとても面倒くさいので、今回は起動ドライブと録画データ専用ドライブを分けることにしました。

またネットワークに関しては、**本来はマザーボード内蔵の有線LANを使用していたし、そのようにしたい**のですが、未だNuro光が開通しておらず、仕方なくポケットWifiをレンタルしている関係上、**無線LANアダプターを使用しないとネットに繋げられず**、<font color=#f00>無線LANのドライバーがOSインストール時に含まれているのがDesktop版しかなかった</font>ため、今回はDesktop版を選択しました。

18.04 LTS ではなく18.10を選択した理由は、テーマのYaruがカッコよかったから。[^0]

[^0]: Nuro光が開通して有線LANが使えるようになったらUbuntu Server 18.04 LTSで構築し直すので、それまでに最新版を触ってみたかったのです。

# 下準備

### 1. 環境構築に必要なデータを集める。

- [PT2用ドライバー(pt1-17b4f7b5dccb)](http://hg.honeyplanet.jp/pt1/rev/17b4f7b5dccb)
- [arib25(pt1-ec7c87854f2f)](http://hg.honeyplanet.jp/pt1/rev/ec7c87854f2f)
- [recpt1(pt1-c8688d7d6382)](http://hg.honeyplanet.jp/pt1/rev/c8688d7d6382)
- [recpt1 httpサーバ機能追加パッチ 新本家[c8688d7d6382]以降対応版](http://d.hatena.ne.jp/katauna/20151114/1447500516)
- [epgrec UNA用epgdump 160127版](http://d.hatena.ne.jp/katauna/20160127/1453894537)
- [epgrecUNA 人柱版 (2015/11/14)](http://d.hatena.ne.jp/katauna/20151114/1447500516)
- [epgrecUNA 151114版用 fix1](http://d.hatena.ne.jp/katauna/20151205/1449313773)
- [epgrecUNA 151114版用 fix2](http://d.hatena.ne.jp/katauna/20160411/1460383655)

### 2. パッチを当てる

1. <font color=#00f>**epgrecUNA 人柱版 (2015/11/14)**</font>、<font color=#f00>**epgrecUNA 151114版用 fix1**</font>、<font color=#f00>**epgrecUNA 151114版用 fix2**</font> を解凍し、<font color=#f00>epgrecUNA 151114版用 fix1</font>、<font color=#f00>epgrecUNA 151114版用 fix2</font> のファイルを順番に<font color=#00f>epgrecUNA 人柱版 (2015/11/14)</font>のフォルダーに上書きコピーします。

2. **recpt1(pt1-c8688d7d6382)** を解凍し、その中の `/recpt1` に対して **recpt1 httpサーバ機能追加パッチ 新本家[c8688d7d6382]以降対応版** を解凍して出てきたdiffファイルを使ってパッチを当てます[^1]。

[^1]: すでに存在していたUbuntu Server 12.04環境でpatchしたが、Windows10ならストアからUbuntuを入れられるのでそれを使えばいいかも。まあ、OSをインストールした後にそこでパッチを当ててもいいけど。

```
root@ubuntu:~/work# ll
合計 16
drwxr-xr-x 5 root   root    4096 11月  9 20:23 ./
drwx------ 6 root   root    4096 11月  9 15:55 ../
drwxr-xr-x 4 root   root    4096 11月  9 20:21 pt1-c8688d7d6382/
drwxr-xr-x 2 root   root    4096 11月  9 20:23 recpt1-http-rev4/

root@ubuntu:~/work# mv recpt1-http-rev4/recpt1-http.diff ./pt1-c8688d7d6382/
root@ubuntu:~/work# cd pt1-c8688d7d6382/

root@ubuntu:~/work/pt1-c8688d7d6382# ll
合計 52
drwxr-xr-x 4 root root  4096 11月  9 20:34 ./
drwxr-xr-x 5 root root  4096 11月  9 20:24 ../
-rw-r--r-- 1 root root   176 10月  1  2013 .hg_archival.txt
drwxr-xr-x 3 root root  4096 11月  9 20:21 driver/
drwxr-xr-x 3 root root  4096 11月  9 20:25 recpt1/
-rw-r--r-- 1 root root 30340  1月 23  2016 recpt1-http.diff

root@ubuntu:~/work/pt1-c8688d7d6382# patch -p1 < recpt1-http.diff
patching file recpt1/Makefile.in
patching file recpt1/configure.ac
patching file recpt1/pt1_dev.h
patching file recpt1/recpt1.c
patching file recpt1/recpt1.h
patching file recpt1/recpt1core.c
patching file recpt1/recpt1ctl.c
patching file recpt1/tsmain.c
patching file recpt1/tssplitter_lite.c
root@ubuntu:~/work/pt1-c8688d7d6382#
```

3\. epgrecUNA 人柱版 (2015/11/14)内のHTMLファイルを書き換える[^2]

```/epgrec/template/programTable.html
666行目:
{if $k_category != 15 || $k_sub_genre>=0x3f }
↓
{if $k_category != 15 || $k_sub_genre>=63 }

679行目:
<b>　曜日:</b>{if $weekofday == 0x7f}なし{else}{$wds_name}{/if}
↓
<b>　曜日:</b>{if $weekofday == 127}なし{else}{$wds_name}{/if}
```

[^2]: [元サイト](http://d.hatena.ne.jp/katauna/20151114/1447500516)のコメント欄に詳しいことが書いてあるので参照。

4\. epgrecUNA 人柱版 (2015/11/14)内の設定ファイルを書き換える

```/epgrec/config.php
9行目（以下は東京での設定。地域ごとにチャンネル番号は適宜変更する）:
$GR_CHANNEL_MAP = array(
	'GR27' => '27',		// NHK
	'GR26' => '26',		// 教育
	'GR25' => '25',		// 日テレ
	'GR22' => '22',		// 東京
	'GR21' => '21',		// フジ
	'GR24' => '24',		// テレ朝
	'GR23' => '23',		// テレ東
	'GR16' => '16',		// MX TV(スカイツリー)
//	'GR20' => '20',		// MX TV(東京タワー)
//	'GR18' => '18',		// テレ神
//	'GR30' => '30',		// 千葉
//	'GR32' => '32',		// テレ玉
//	'GR28' => '28',		// 大学
);

75行目（今回はPT2は１枚なので、BSと地上波の２つ）:
define( 'TUNER_UNIT1', 0 ); // 各放送波の論理チューナ数(地上波･衛星波で共用 ex.PT1が1枚なら2)
↓
define( 'TUNER_UNIT1', 2 ); // 各放送波の論理チューナ数(地上波･衛星波で共用 ex.PT1が1枚なら2)
```
チャンネル番号は住んでいる場所に応じて[受信できるチャンネルの番号](https://www.maspro.co.jp/contact/bro/bro_ch.html)に変更してください。

### 3. USBメモリーにコピーする
以下の５つをコピーする。

```
epgdump
epgrec
pt1-17b4f7b5dccb
pt1-c8688d7d6382
pt1-ec7c87854f2f
```

# Ubuntu Desktop 18.10 のインストール用USBメモリーを作成する

1. [Ubuntu本家サイト](https://www.ubuntu.com/download/desktop)から18.10用のisoイメージファイル `ubuntu-18.10-desktop-amd64.iso` をダウンロードする。
2. [Rufus](https://rufus.ie/ja_JP.html)をダウンロードする。
3. USBメモリーを接続し、Rufusを起動。書き込むイメージファイルにUbuntuのisoファイルを指定して書き込みを行う。

# PCの用意
録画サーバー用のPCを組み立てます。この時点でPT2とカードリーダーは接続しておきましょう。
また、SATA1にシステム用ドライブ（120GBのやつ）のみを接続しておき、事故防止のため録画データ専用ドライブは外して箱にでも入れておきます。

# BIOSの設定
準備編で用意した、Ubuntu Desktop 18.10 のインストール用USBメモリーをマシンに挿し、電源を入れます。
BIOSが起動したらキーボードのDelキーを押し、BIOSの設定画面を表示させます。
ブートドライブの優先順位を、

    1. UEFI: USB Flash Disk
    2. 無効

に変更し、HDDからはブートできないように設定します。[^3]
[^3]: HDDを１番目にし、USBを２番目に設定したほうが後々楽だけど、何度もインストールし直すとHDDにOSが残っていてそっちが先に起動してしまうため、インストール時はブートディスクは１つだけにしておいたほうが分かりやすくて良いと思う。
また、USB Flash Diskは`UEFI`と表示があるものを選びます。[^4]
[^4]: 何となく最新の形式っぽいので。
あとは設定を保存してBIOSの設定画面を終了させます。

# Ubuntuのインストール

BIOSの設定画面を終了させて暫く経つと、Ubuntuのインストール画面が表示されるので、`Install Ubuntu`を選択します。
暫くするとGUIでのインストール画面が表示されるので、画面の案内に従ってインストールを進めていきます。
その際、ネットワークはWiFiを設定してインターネットに接続できる状態にしておきます。

インストールするコンポーネントを選択する設定では`最小インストール`を選択し、また、`Ubuntuのインストール中にアップデートをダウンロードする`にチェックを入れておきます。

インストールの種類は`ディスクを削除してUbuntuをインストール`を選択し、この時「新しいUbuntuのインストールにLVMを使用する」は選択しません。[^5]

後は画面に従って進めます。
[^5]: LVMをきちんと理解していない状態でよく分からないオプションを盛り込むのはリスクのため。

# 再起動

インストールが完了すると、再起動するボタンが表示されるので押して再起動します。
この際、再起動後のBIOS設定でブートドライブの優先順位を、

    1. ubuntu
    2. 無効

に設定します。[^6]
[^6]: そうしないとまたUSBからブートされてインストール画面が表示されちゃう。最初からHDDを１番目にし、USBを２番目に設定しておけばこんなことしなくて済むんだけどね。

# 準備完了
Ubuntuのインストールが終わって再起動が完了するとUbuntuのデスクトップが表示されるので、デスクトップ上に表示されているインストール用USBのアイコンを右クリックし、`取り出す`を選択してUSBを抜きます。

続いてドライバーなどを入れてPT2を使えるようにしていきます。

**次: [Ubuntu Desktop 18.10 に PT2 と epgrec UNA を使った録画サーバーを構築する（インストール編）2 / 4](https://qiita.com/Uchida-Yuuki/items/672d113ee58f11e4ea9d)**