PLEXのUSBチューナーPX-S1UDがLinuxで使えるというので試してみた。標準ドライバに少し手を加えて使えるようにする。環境はDebian(wheezy)。
追記:ドライバがカーネルに組み込まれたのでこちらを参照。PX-S1UDとPT3のDVBドライバがLinux標準に – 底辺迷走
Debian(wheezy)に導入されているカーネル3.2に含まれているドライバはPX-S1UDに使えないので、新しいカーネルを導入しておく。カーネル3.10以降であればアップグレードは不要。
使われているカーネルを確認
$ uname -r 3.2.0-4-amd64
Backportsリポジトリを追加
$ sudo sh -c "echo 'deb http://ftp.debian.org/debian/ wheezy-backports main' > /etc/apt/sources.list.d/wheezy-backports.list" $ sudo aptitude update
カーネルのインストール
$ sudo aptitude -t wheezy-backports install linux-image-3.12-0.bpo.1-amd64
カーネルを入れ替えるために再起動
$ sudo reboot
カーネルを確認
$ uname -r 3.12-0.bpo.1-amd64
必要なパッケージのインストール
$ sudo aptitude install build-essential linux-source-3.12 linux-headers-3.12-0.bpo.1-amd64
カーネルソースの展開
$ cd /usr/local/src/ $ tar xvJf /usr/src/linux-source-3.12.tar.xz
ビルドの準備
$ cd linux-source-3.12/ $ cp /boot/config-`uname -r` .config $ make oldconfig $ make modules_prepare $ cp /lib/modules/`uname -r`/build/Module.symvers .
ドライバの階層に移動
$ cd drivers/media/usb/siano/
ソースを修正する
$ vi smsusb.c
usb_device_id smsusb_id_tableに次の2行を追加
{ USB_DEVICE(0x3275, 0x0080),
.driver_info = SMS1XXX_BOARD_SIANO_RIO },
変更内容
$ diff -u smsusb.c{.org,} --- smsusb.c.org 2014-01-26 02:18:00.000000000 +0900 +++ smsusb.c 2014-03-21 19:59:07.922682492 +0900 @@ -634,6 +634,8 @@ .driver_info = SMS1XXX_BOARD_ZTE_DVB_DATA_CARD }, { USB_DEVICE(0x19D2, 0x0078), .driver_info = SMS1XXX_BOARD_ONDA_MDTV_DATA_CARD }, + { USB_DEVICE(0x3275, 0x0080), + .driver_info = SMS1XXX_BOARD_SIANO_RIO }, { } /* Terminating entry */ };
ドライバモジュールのビルド
$ make -C /usr/local/src/linux-source-3.12 M=`pwd` modules
"make modules_install"ではうまくインストール出来ないのでcpでインストールする。Windows用ドライバに含まれるファームウェアも必要なので導入しておく。
元のモジュールを上書きするので、バックアップする
$ sudo mv /lib/modules/`uname -r`/kernel/drivers/media/usb/siano/smsusb.ko{,.org}
ドライバモジュールのインストール
$ sudo cp smsusb.ko /lib/modules/`uname -r`/kernel/drivers/media/usb/siano/
unzipのインストール
$ sudo aptitude install unzip
Windows用ドライバからファームウェアを導入
$ cd /usr/local/src/ $ wget http://plex-net.co.jp/plex/px-s1ud/PX-S1UD_driver_Ver.1.0.1.zip $ unzip PX-S1UD_driver_Ver.1.0.1.zip $ sudo cp PX-S1UD_driver_Ver.1.0.1/x64/amd64/isdbt_rio.inp /lib/firmware/
PX-S1UDの接続確認
$ lsusb |grep VidzMedia Bus 002 Device 002: ID 3275:0080 VidzMedia Pte Ltd
ドライバモジュールのロード
$ sudo modprobe smsusb
デバイスの確認
$ ls /dev/dvb/ adapter0
ドライバモジュールを自動で読み込ませる
$ sudo sh -c "echo smsusb >> /etc/modules"
DVBデバイスとして認識されるので他のDVBデバイス同様に扱える。FUSE_b25を使えばMythTVでも使える。
参考:
takaaki 3月 21st, 2014
Posted In: ハードウェア
タグ: Debian, DVB, fuse_b25, LAN, Linux, MythTV, PT3, PX-S1UD, TV, Windows
Philipsのディスプレイ234E5QHSB/11を2台購入した。それまでDVIで接続していたが、このディスプレイにはDVIポートがなく、HDMIポートに接続することになる。HDMIに変更するついでに音声もHDMIに乗せることにした。ディスプレイにはスピーカーをつないでいる。
環境はP5K-PRO+GeForce 9600GT GE。DVIをHDMIに変換して使う。GeForce 400シリーズより前のNVIDIAのビデオカードはサウンドチップを搭載していないので、音声を乗せるにはマザーボードのS/PDIF出力に接続する必要がある。
接続用の2pinケーブルが付属品にはなかったので探してみたが、見つからなかった。PCショップで聞いてみた所、最近のものには必要ないのでもう売ってないという。仕方なく、似たようなケーブルを探してみたところ、ヨドバシでTK-CD4というケーブルを見つけた。CD-ROM用とあるが、調べてみるとS/PDIFのケーブルらしい。これを購入して接続することにした。
マザーボードとビデオカードのS/PDIFを接続する。接続方法はELZAの接続ガイドを見るとわかりやすい。ASUS製の接続例を見て接続した。
ディスプレイから出力するには再生デバイスの既定値をデジタル出力に設定する。
起動直後は音声が出力されるが、スリープすると音が出なくなった。ドライバを入れ直したり、ディスプレイを接続し直したりしても改善しない。
NVIDIAコントロールパネルを見ると音声出力がオフになっていた。スリープから復帰したときのこの設定が適用されたらしい。設定を変更すると音声が出力されるようになった。
アナログ出力と違ってデジタル出力はノイズが乗りにくいので、今まであったPC内部のノイズがなくなって快適になった。
takaaki 3月 15th, 2014
Posted In: ハードウェア
DVB版ドライバがないPT3ではMythTVは使えなかった。最近DVB版PT3ドライバが公開されたので、導入してみる。環境はいつも通りDebianの安定版(wheezy)。
Debian(wheezy)に導入されているカーネル3.2ではビルドできないので、新しいカーネルを導入しておく。3.5でビルドできないことと3.8以降でビルドできることを確認している。新しいカーネルはbackportsリポジトリを使うと簡単に導入できる。
使われているカーネルを確認
$ uname -r 3.2.0-4-amd64
Backportsリポジトリを追加
$ sudo sh -c "echo 'deb http://ftp.debian.org/debian/ wheezy-backports main' > /etc/apt/sources.list.d/wheezy-backports.list" $ sudo aptitude update
カーネルのインストール
$ sudo aptitude -t wheezy-backports install linux-image-3.10-0.bpo.3-amd64
カーネルを入れ替えるために再起動
$ sudo reboot
カーネルを確認
$ uname -r 3.10-0.bpo.3-amd64
PT3ドライバのビルドに必要なV4L-DVBドライバを導入する。ビルドには少し時間がかかる。
必要なパッケージのインストール
$ sudo aptitude install build-essential patchutils libproc-processtable-perl l linux-headers-3.10-0.bpo.3-amd64
ビルド
$ cd /usr/local/src/ $ git clone git://linuxtv.org/media_build.git $ cd media_build $ ./build
インストール
$ sudo make install $ sudo make kernel-links #ヘッダーのインストール
事前準備は済んだのでドライバをインストールする。
ソースの取得
$ cd /usr/local/src/ $ git clone https://github.com/knight-rider/ptx.git $ cd ptx/pt3_dvb/
V4L-DVBからModule.symversをコピー
$ cp /usr/local/src/media_build/v4l/Module.symvers .
ビルド
$ make
インストール
$ sudo make install
ドライバモジュールのロード
$ sudo modprobe pt3_dvb
デバイスファイルの確認
$ ls /dev/dvb/ adapter0 adapter1 adapter2 adapter3
PT2のDVB版ドライバと同じように使えるが、デバイス番号が異なる。0,1が衛星波、2,3が地上波と、順番はChardev版と同じになる。
tuneコマンドやs2scanが付属しているのでビルドする。
tune.cのDTV_STREAM_IDをDTV_ISDBS_TS_IDに書き換える
$ vi tune.c $ git diff tune.c diff --git a/dvb_apps/cmds/tune.c b/dvb_apps/cmds/tune.c index 20178d0..a45ee08 100644 --- a/dvb_apps/cmds/tune.c +++ b/dvb_apps/cmds/tune.c @@ -100,7 +100,7 @@ static int search(int adapter_nr, int channel_id) prop[0].cmd = DTV_FREQUENCY; prop[0].u.data = channel->frequency; - prop[1].cmd = DTV_STREAM_ID; + prop[1].cmd = DTV_ISDBS_TS_ID; prop[1].u.data = channel->ts_id; prop[2].cmd = DTV_TUNE;
ビルド
$ make $ find . -perm +111 . ./restamp ./nitdump ./ptsdump ./tune ./dumpts ./dumpeid ./s2scan ./dumpts2
コマンドが生成される。コマンドの使い方やDVB版の使い方は以前の記事を参照。
予約機能が良くても、BSに対応できないとMythTVは導入できない。
PT3といえば、chardev版PT3の導入記事に/etc/modprobe.d/blacklist.confにearth-pt1を追加するように書いてあるのが気になる。earth-pt1はPT3には対応していないので、PT1/2を導入していない環境では効果が無い。
参考:
takaaki 11月 24th, 2013
Posted In: ハードウェア
一人暮らしを始める際にPT3を導入した。そのままではカーネル更新時にドライバが使えなくなってしまうのでPT3にもDKMSを導入してみた。dkms.confがソースに導入されているので、思いの外簡単に設定できた。環境はDebian(Wheezy)
DKMSのインストール
$ sudo aptitude install dkms
/usr/src/以下にPT3ドライバのソースを取得
$ cd /usr/src/ $ sudo git clone git://github.com/m-tsudo/pt3.git pt3_drv-0.0.1 Cloning into 'pt3_drv-0.0.1'... remote: Counting objects: 541, done. remote: Compressing objects: 100% (150/150), done. remote: Total 541 (delta 390), reused 535 (delta 384) Receiving objects: 100% (541/541), 133.67 KiB | 136 KiB/s, done. Resolving deltas: 100% (390/390), done.
dkms.confに書かれているPACKAGE_NAMEとPACKAGE_VERSIONの通りにパスやコマンドを指定する。
DKMSにPT3ドライバのソースを追加
$ sudo dkms add -m pt3_drv -v 0.0.1 Creating symlink /var/lib/dkms/pt3_drv/0.0.1/source -> /usr/src/pt3_drv-0.0.1 DKMS: add completed.
自動インストールの動作を確認(build,install未実行時)
$ sudo /usr/lib/dkms/dkms_autoinstaller start [....] dkms: running auto installation service for kernel 3.2.0-4-amd64: Kernel preparation unnecessary for this kernel. Skipping... Building module: cleaning build area.... make KERNELRELEASE=3.2.0-4-amd64 KVER=3.2.0-4-amd64..... cleaning build area.... DKMS: build completed. pt3_drv.ko: Running module version sanity check. - Original module - Installation - Installing to /lib/modules/3.2.0-4-amd64/updates/dkms/ depmod.... DKMS: install completed. . ok
ここまでで、導入は完了。手動で実行する場合や削除する場合は下記のコマンドを使う。
ドライバモジュールのビルド
$ sudo dkms build -m pt3_drv -v 0.0.1 Kernel preparation unnecessary for this kernel. Skipping... Building module: cleaning build area.... make KERNELRELEASE=3.2.0-4-amd64 KVER=3.2.0-4-amd64..... cleaning build area.... DKMS: build completed.
ドライバモジュールのインストール
$ sudo dkms install -m pt3_drv -v 0.0.1 pt3_drv: Running module version sanity check. - Original module - Installation - Installing to /lib/modules/3.2.0-4-amd64/updates/dkms/ depmod.... DKMS: install completed.
ドライバモジュールのアンインストール(動かない?)
$ sudo dkms uninstall -m pt3_drv -v 0.0.1
ソースパッケージの登録削除
$ sudo dkms remove -m pt3_drv -v 0.0.1 --all -------- Uninstall Beginning -------- Module: pt3_drv Version: 0.0.1 Kernel: 3.2.0-4-amd64 (x86_64) ------------------------------------- Status: Before uninstall, this module version was ACTIVE on this kernel. pt3_drv.ko: - Uninstallation - Deleting from: /lib/modules/3.2.0-4-amd64/updates/dkms/ - Original module - No original module was found for this module on this kernel. - Use the dkms install command to reinstall any previous module version. depmod.... DKMS: uninstall completed. ------------------------------ Deleting module version: 0.0.1 completely from the DKMS tree. ------------------------------ Done.
takaaki 7月 31st, 2013
3月に、仕事に就けたのを機会にP-07AからELUGA X(P-02E)に機種変更した。
LTE+クアッドコアを条件に考えていたら、ハードキーや片手操作が好みだったのでこの機種にした。前の機種を選んだ理由もプッシュオープンやWオープンだったり外面の機能で選ぶ傾向がある。結果、P505i→P902is→P906i→P-07AとPanasonicの端末しか使ったことがない。全く期待していなかっただけに、スマートフォンまでPanasonicを選ぶとは思わなかった。
不具合はディスプレイに縦縞が出てフリーズするのとカメラの起動失敗があったが、どちらもアップデートで修正されて現在は快適。USBホストや有線での外部ディスプレイは使えないが、あまり使わない機能なので問題ない(USBホストは置くだけ充電と相性がよさそうだが)。標準のフィットホームもフィットキーも悪くない。ドロワーはその場で表示されて最低限の機能しか持たないので使いやすい(カテゴリ整理のランチャーを使ったら面倒になった)。
HTC J butterflyを借りてみたら、USBカバーが開けにくかったり、通知領域にトグルがなかったり、ELUGA Xの方が使いやすいように感じた。TPUケースをつけたら持ちにくい上に、端が押せなくて全面に細かい傷がついたので使うのをやめた。クリップ付きの紐ストラップをつけたので、落下はまだない。
他人のを設定した経験から、特に迷うことなく使えて小型PCとしか思ってなかったので、PC同様に環境構築して満足してしまった。
dビデオを契約させられたので、3月末にdtabも注文した。
入社2ヶ月で、転職がすでに決まってる。何が起こるかわからない。
takaaki 5月 12th, 2013
DKMSはカーネルモジュールのソースパッケージを管理するシステム。これを使うとモジュールのビルド、インストールを自動化できる。これをPT2のDVB版ドライバに適用する。
DKMSのインストール
$ sudo aptitude install dkms
ソースのダウンロード・展開
$ wget http://www.linuxtv.org/hg/v4l-dvb/archive/tip.tar.gz $ tar xvzf tip.tar.gz
ソースのディレクトリは"<パッケージ名>-<バージョン>"という名前にし、/usr/src/以下に配置する。展開された状態で"v4l-dvb-3724e93f7af5"となっているのでそのままコピーした。
/usr/src/以下にソースをコピー
$ sudo cp -r v4l-dvb-3724e93f7af5/ /usr/src/
DKMSにソースパッケージを追加するにはソースディレクトリ内に"dkms.conf"という設定ファイルを作成する必要がある。
dkms.confの作成
$ sudo vi /usr/src/v4l-dvb-3724e93f7af5/dkms.conf #パッケージの名前 PACKAGE_NAME="v4l-dvb" #パッケージのバージョン PACKAGE_VERSION="3724e93f7af5" #中間ファイルの削除コマンド CLEAN="make clean" #ビルドするコマンド MAKE="make KVER=${kernelver}" #モジュールが作成される場所(ソースディレクトリからの相対パス) BUILT_MODULE_LOCATION[0]="v4l" BUILT_MODULE_LOCATION[1]="v4l" #作成されるモジュールの名前(拡張子.koは付けない) BUILT_MODULE_NAME=[0]"dvb_core" BUILT_MODULE_NAME=[1]"earth-pt1" #元々のインストール先(/lib/modules/`uname -r`をルートとしたパス) DEST_MODULE_LOCATION[0]="/kernel/drivers/media/dvb/dvb-core/" DEST_MODULE_LOCATION[1]="/kernel/drivers/media/dvb/pt1/" #自動更新の有効化 AUTOINSTALL="YES"
必要なモジュールはearth-pt1のみなのでearth-pt1とdvb-coreのみなので上記のようにした。他のモジュールも入れる場合BUILT_MODULE_LOCATION[2],BUILT_MODULE_NAME[2],DEST_MODULE_LOCATION[2]というようにインデックスを増やして指定する。同じインデックスで組になる。
AUTOINSTALL="YES"としておくとカーネルのアップデート時に自動的にインストールされる。(設定の有無だけを見ているので"NO"としても有効になる)
DEST_MODULE_LOCATIONは元々のモジュールを見つけるためだけに使われ、モジュールはupdates/dkms/以下にインストールされる。Ubuntu10.10以降など新しいディストリビューションでは使われるらしい。
ソースパッケージの追加
$ sudo dkms add -m v4l-dvb -v 3724e93f7af5
モジュールのビルド
$ sudo dkms build -m v4l-dvb -v 3724e93f7af5
モジュールのインストール
$ sudo dkms install -m v4l-dvb -v 3724e93f7af5
インストールされたモジュールの確認
$ sudo modprobe -l |grep earth-pt1.ko updates/dkms/earth-pt1.ko
モジュールのアンインストール
$ sudo dkms uninstall -m v4l-dvb -v 3724e93f7af5
ソースパッケージの登録削除
$ sudo dkms remove -m v4l-dvb -v 3724e93f7af5 --all
自動インストールの動作を確認するには次のコマンドを使う。
$ sudo /usr/lib/dkms/dkms_autoinstaller start
追記:アンインストールの記述間違いを修正
2012/03/30追記: earth-pt1のモジュールが動作しなかったのでdvb-coreもdkms.confに追加。
2012/05/11追記: 上手く動かなかったのでdkms.confにBUILT_MODULE_LOCATION[1]を追加。(動作確認済み)
takaaki 2月 4th, 2012
簡易設置したBSのアンテナがずれてBSが受信できなくなっていたので再調整した。
DVB版ドライバで信号レベルを測定する方法が見当たらないので、chardev版ドライバをインストールして測定する。測定にはrecpt1付属のchecksignalを使う。
ドライバの取得・展開
$ wget http://hg.honeyplanet.jp/pt1/archive/tip.tar.bz2 $ tar xvjf tip.tar.bz2
ドライバのインストール
$ cd pt1-3914cc1b2375/ $ cd driver/ $ make $ sudo make install
recpt1をビルド
$ cd ../recpt1/ $ ./autogen.sh $ ./configure $ make
ドライバ付属のもので問題ない。常用しないのでインストールはしない。
MythTVの停止
$ sudo /etc/init.d/mythtv-backend stop
fuse_b25のマウント解除
$ sudo umount /dev/dvb/adapter{10,11,12,13}
DVB版のドライバ無効化して、chardev版ドライバを有効化
$ sudo modprobe -r earth_pt1 $ sudo modprobe pt1_drv
DVB版と違って0,1がBS/CS、2,3が地上波になっている。地上波は物理チャンネルを指定、BSは通常のチャンネル。BSは同じ方角なので、チャンネルが古くても問題ない。
使い方
$ ./checksignal --help Usage: ./checksignal [--device devicefile] [--lnb voltage] [--bell] channel Options: --device devicefile: Specify devicefile to use --lnb voltage: Specify LNB voltage (0, 11, 15) --bell: Notify signal quality by bell --help: Show this help --version: Show version --list: Show channel list Available Channels: 13-62: Terrestrial Channels 101ch: NHK BS1 102ch: NHK BS2 103ch: NHK BShi 141ch: BS Nittele 151ch: BS Asahi 161ch: BS-TBS 171ch: BS Japan 181ch: BS Fuji 191ch: WOWOW 192ch: WOWOW2 193ch: WOWOW3 200ch: Star Channel 211ch: BS11 Digital 222ch: TwellV C13-C63: CATV Channels CS2-CS24: CS Channels
地上波
$ ./checksignal --device /dev/pt1video2
BS
$ ./checksignal --device /dev/pt1video0 --lnb 15 101
モジュールの入れ替え
$ sudo modprobe -r pt1_drv $ sudo modprobe earth_pt1
トラブル防止のためにchardev版ドライバを自動的にロードしないようにする
$ sudo sh -c 'echo "blacklist pt1_drv" >> /etc/modprobe.d/blacklist.conf'
もしくは、ドライバをアンインストールしてしまう
$ sudo rm /lib/modules/`uname -r`/kernel/drivers/video/pt1_drv.ko $ sudo rm /etc/udev/rules.d/99-pt1.rules
fuse_b25の再マウント
$ sudo fuse_b25 --target /dev/dvb/adapter0 /dev/dvb/adapter10 -o allow_other $ sudo fuse_b25 --target /dev/dvb/adapter1 /dev/dvb/adapter11 -o allow_other $ sudo fuse_b25 --target /dev/dvb/adapter2 /dev/dvb/adapter12 -o allow_other $ sudo fuse_b25 --target /dev/dvb/adapter3 /dev/dvb/adapter13 -o allow_other
MythTVの起動
$ sudo /etc/init.d/mythtv-backend start
追記:コマンドの間違いを修正
takaaki 2月 2nd, 2012
先月、アナログ停波に備え、余ったPT2を譲ってもらって録画環境をデジタル化した。地上波だけでは高い買い物に感じたのでBSにも対応させた。ようやく使えるようになってきたのでまとめる。今回はMythTV以外の部分。
用意した機材
B-CASカードは電話して再発行してもらった。BSが見られるか聞かれただけでメーカー、機種名は問われなかった。
家にアンテナが立っていないのでブースター付きの室内アンテナを新調。ケーブルが付属していないので2本必要になる。BSアンテナは十年以上使われてなかったものをガラクタで補修して簡単に設置した。アンテナケーブルは一番安く手に入るダイソーのものを購入。
信号レベルはWindowsマシンにカードを挿してSignalTalkerで測った。BSアンテナはBluetoothでSignalTalkerの音を飛ばして調整した。recpt1でも信号レベルは測れるらしいので、もしアンテナがずれたら試してみる。DVB版で測れるツールはないんだろうか。
まずドライバを導入する。chardev版ではなくDVB版を使う。DVB版はfuse_b25を使えば、アナログ環境で使っていたMythTVで使える。DVB版ドライバは新しいカーネルには標準で入っているが、squeezeのカーネルには入っていないのでインストールする。
PT2が認識しているか確認
$ lspci | grep Multimedia 04:01.0 Multimedia controller: Xilinx Corporation Device 222a (rev 01)
上のように出たらPT2が認識しているのでドライバをインストールする。ドライバのソースはhttp://www.linuxtv.org/hg/v4l-dvbからダウンロードできる。
そのままではビルドできないので必要なパッケージをインストールしておく。
$ sudo aptitude install build-essential linux-header-2.6-amd64
パッケージをインストールしたらドライバをビルドしてインストールする。
$ cd /usr/local/src/ $ wget http://www.linuxtv.org/hg/v4l-dvb/archive/tip.tar.bz2 $ tar xjf tip.tar.bz2 $ cd v4l-dvb-3724e93f7af5/ $ make $ sudo make install $ sudo reboot
インストール後、ドライバモジュールを読み込ませるために再起動する。
ドライバの確認。
$ lsmod | grep pt1 earth_pt1 15748 105 dvb_core 75106 1 earth_pt1 i2c_core 15819 6 i915,drm_kms_helper,earth_pt1,drm,i2c_algo_bit,i2c_i801 $ dmesg | grep DVB [ 7.555975] DVB: registering new adapter (earth-pt1) [ 7.556224] DVB: registering new adapter (earth-pt1) [ 7.556414] DVB: registering new adapter (earth-pt1) [ 7.556632] DVB: registering new adapter (earth-pt1) [ 7.892565] DVB: registering adapter 0 frontend 0 (VA1J5JF8007/VA1J5JF8011 ISDB-S)... [ 7.892655] DVB: registering adapter 1 frontend 0 (VA1J5JF8007/VA1J5JF8011 ISDB-T)... [ 7.892688] DVB: registering adapter 2 frontend 0 (VA1J5JF8007/VA1J5JF8011 ISDB-S)... [ 7.892714] DVB: registering adapter 3 frontend 0 (VA1J5JF8007/VA1J5JF8011 ISDB-T)... $ ls /dev/dvb/ adapter0 adapter1 adapter2 adapter3
ISDB-SとなっているのがBS/CS用、ISDB-Tとなっているのが地上波用になる。
takaaki 8月 19th, 2011
タグ: Debian, DVB, fuse_b25, Linux, MythTV, PT2, TV, Windows, 録画
Debian 6.0(squeeze)のインストール先にWesternDegital WD20EARSを使った。これを2台使って、ソフトウェアRAIDとLVMを構成する。ただし、このディスクには3つ問題がある。
まず、IntelliParkの8秒はやりすぎなので5分程度に設定する。設定にはwdidle3.exeを使う(WDのサポート外なので注意)。
A:\>C:
C:\>wdidle3.exe /s300
次にAFT対策、論理セクタと物理セクタがずれないようにする。MBRパーティションにsqueezeをインストールする場合は最初のパーティションは2048セクタで開始するので対策は不要。2TBのディスクを使うとGPTになり、なぜかずれる。そのため、先にGPartedでパーティションを切っておく。起動用の小さなパーティションと他のパーティションを未フォーマットで切っていく。
起動用パーティションを作る。AlignをMiBにして先頭に最小単位1MiBの未フォーマットパーティションを作り、右クリックメニューの情報で開始セクタが2048セクタになっているのを確認する。ここにGrubがインストールされる。
同様に他のパーティションも切っていく。RAIDを組むので2台に同じように切る。
3つの問題の問題が解決した所でインストールを始める。パーティションは1MB,256MB,残りの3つに切った。HDD以外にドライブを積んでいないのでUSBメモリからインストールする。ここでもUNetbootinを使う。DebianとStable_NetInstall_x64を選択してUSBメモリに書き込む。書き込んだUSBメモリからブートする。インストーラが起動したら、USBメモリを抜きインストール開始(USBメモリがsdaになるのを防ぐ)。
インストールを進めて、ディスクのパーティショニングで手動を選択。あらかじめ切っておいたパーティションを次のようにする。予約済みBIOSブート領域(biosgrub)を作らないとGRUBのインストールに失敗する。(作らなくても警告が出ず、何度やっても失敗するのではまった。ガイドでパーティショニングすると勝手に作られる)
物理パーティションの構成
/dev/sda1(/dev/sdb1) | 1MB | 予約済みBIOSブート領域(biosgrub) |
/dev/sda2(/dev/sdb2) | 256MB | RAIDの物理ボリューム(/dev/md0) |
/dev/sda3(/dev/sdb3) | 2TB | RAIDの物理ボリューム(/dev/md1) |
次にソフトRAIDを設定する。ソフトウェアRAIDの設定から/dev/sda2と/dev/sdb2、/dev/sda3と/dev/sdb3をそれぞれチェックしてRAID1アレイを作成する。小さい方のアレイにext4を指定して、マウントポイントを/bootに指定。大きい方をLVMの物理ボリュームに指定してボリュームグループを作成する。次に、ボリュームグループから必要なだけ論理ボリュームを作成して、完了を選ぶ。切り出した論理ボリュームにそれぞれ利用方法とマウントポイントを指定する。次のような構成にした。後で足りなくなった容量を拡張できるようにボリュームグループを使い切らずに残してある。
パーティションの構成(RAID)
/dev/sda1 | 1MB | biosgrub |
/dev/md0 | 256MB | ext4 |
/dev/md1 | 2TB | LVMの物理ボリューム |
パーティションの構成(LVM)と利用方法
パーティション | 容量 | 利用方法 | マウントポイント |
/dev/sda1 | 1MB | biosgrub | – |
/dev/md0 | 256MB | ext4 | /boot |
論理ボリューム | 20GB | ext4 | / |
論理ボリューム | 200GB | ext4 | /home |
論理ボリューム | 20GB | ext4 | /usr |
論理ボリューム | 1.5TB | ext4 | /usr/local |
論理ボリューム | 20GB | ext4 | /var |
論理ボリューム | 5GB | ext4 | /tmp |
論理ボリューム | 4GB | スワップ領域 | – |
設定し終えたら変更を書き込む。あとは通常通りインストールを進める。ソフトウェアの選択にSSHサーバーが追加されていた。インストール直後からSSHで操作ができて便利。
インストール後は、2つ目のディスクにも起動情報を書き込む。パーティションとして見えるのでbiosgrubパーティションを1つ目のディスクから2つ目のディスクへコピーするだけで済む。
$ sudo dd if=/dev/sda1 of=/dev/sdb1 bs=512
2048+0 records in
2048+0 records out
1048576 bytes (1.0 MB) copied, 0.0783861 s, 13.4 MB/s
$
参考
メモ帳: Ubuntu9.10 で NAS on RAID1(3/6)
takaaki 2月 16th, 2011
[CPU]Intel Pentium Dual-Core E2180 2.0GHz
[M/B]P5K PRO (中古)
[メモリ]バルク S&Mとかいう悪評チップ 2GB*2
[VGA] RH3650-E512HW
[HDD]ST3500320AS 500GB
[FDD]FA404MX
[DVDドライブ]GH20NS10
[ケース]CM690 (展示品)
[電源]KRPW-K500W
[キャプチャ]GV-MVP/RX(中古)
いろいろ情報を集めた上で、ほとんど価格.comの上位で選んだ。オークションと九十九で揃えた。
CPU:
そんなに性能が必要ないと思って安物にした。コストパフォーマンスはいい。低発熱でOCしても安定。廉価版でもPentiumブランドはさすが。FSBやら固定して、電圧上げたら3GHzまでOCできた。後々VTが無効化されてるのに不自由した。リテールファンでもそんなにうるさくなくて十分冷えた。
マザーボード:
P5K-Eが一番売れてた。それで、ASUSの同系統のP5K PRO。なんとなくこっちにしてみたくなった。でも、糞配線。ケースの中央に大蛇ができてる。
メモリ:
なんとなくオークションで入札したら落ちた。落ちてほしくなかった。調べたら2chにスレが立つほどの糞チップ。エラーとかもなく安定してる。
VGA:
PCゲームはやらないので、動画支援付のRADEON。使いまわしできる部品だから、それなりのものをと。デュアルディスプレイを視野に端子が2基のものを選んだ。統一感と将来性を考えて両方DVI。SAPPHIRE製が良さそうだったので買おうと思ったら売り切れ。ちょうど、玄人志向のVGAのセールがやってた。そこからSAPPHIREのと中身が同じものを。
HDD:
最初からSeagateにしようと思ってた。当時コストパフォーマンスが一番よかった500GB。他がキャッシュ16MBに対して32MBだったので購入。九十九の保証もつけた。1ヶ月で認識しなくなった。初期不良の期間が過ぎてたけど初期不良交換。数日前にその原因がわかった。思いっきりその被害者。
(GALACTIC FUNK | seagateがやばい)
修理から帰ってきたのも同じ型。ファームはSD15、これは危ない。
FDD:
カードリーダ内臓。OSバンドルでない。ないと落ち着かない、それだけ。FDDは使わなくてもカードリーダがついてる。
DVDドライブ:
LG電子が良さそうな気がした。その中で売れ筋のもの。
ケース:
当時、価格.comで1位。下置き電源で探した。AntecのSOLOとかP180はちょっと高くて手が出なかった。どちらかと言うと静音より冷却。似た感じのNineHundredは見た目が気に入らなくて、それ以下のThreeHundredは選べない。青いファンを1つ増設。サイドファンがうるさいので底面吸気ファンにした。
電源:
値段の割りにいい電源ということで。電源なら玄人志向でも問題ないはず。サービスコンセントがないのが普通なのは知らなかった。連動OAタップも購入。
キャプチャ:
ゲームのキャプチャ用に低予算で。番組録画で頻繁に使うようになった。唯一64bit非対応のパーツ。32bitOSから離れられない原因になってしまった。
2つ玄人でメモリはバルクで危ない。CPUの予算が異常に低かった。CPUよりメモリ派。ケースファンには換気扇フィルタ。大学で仕入れた中古の15型ディスプレイ×2、サーバに使ってる中古PCについてたキーボード。壊れたマウスの代わりに買ったマウス。黒いのは本体だけ。
九十九がつぶれかけたと思ったら今度はSeagate。
takaaki 1月 21st, 2009
Posted In: ハードウェア