ハードウェアRAID (HighPoint? 372) †
私が使用しているマザーボードEPoX 8KRA2には、IDE-RAIDコントローラが内蔵されていました。
長い間眠っていたのですが、OS(Linux)を再インストールする機会がありましたので,使えるようにしました.
IDE-RAIDコントローラ †
内蔵されていたIDE-RAIDコントローラのチップ:
- HighPoint HPT372
BIOS Configuration Utility †
BIOSの起動画面で,Ctrl+hを押すと,BIOS Configuration Utilityの画面が表示される.この画面でRAID Arrayを作成する.
準備 †
HighPoint社のページからドライバをダウンロード
2005年05月現在は,Support –> Bios + Driver –> RocketRAID 133 と辿って行くことでドライバーをダウンロードすることができました.
hpt3xx-opensource-v2.0.tgz
が最新の用でしたが,私の環境(Vine-3.1)ではAbord/Resetを繰り返してしまい,動作も異常に遅いので一つ前のv1.35を使うことにしました.
他に設定ツールもあるのでこちらもダウンロード
- linux-gui-v306.tgz (GUI版)
- hptcli-v10.tgz (CUI版)
ドライバのインストール †
解凍 †
# mkdir htp3xx # cd htp3xx # tar zxvf ../hpt3xx-opensource-v1.35.tgz
コンパイル †
KERNELDIR= の値は,Kernelのソースコードの位置です.
SUPPORT_SATA= シリアルATAなのかどうかの判定です.私の場合はシリアルATAではないので0としました.
# make KERNELDIR=/usr/src/linux-2.4.27 SUPPORT_SATA=0
ドライバの読み込み †
SCSIモジュールの読み込み
# modprobe sd_mod
IDEドライバの読み込み
# insmod ./hpt37x2.0
読み込み結果を,/var/log/messageで確認する.
SCSI subsystem driver Revision: 1.00 HPT37x2 RAID Controller driver Version 2.0, Compiled May 3 2005 23:28:01 scsi0 : hpt37x2 Vendor: HPT3xx Model: RAID 1 Array Rev: 3.00 Type: Direct-Access ANSI SCSI revision: 00 ANSI SCSI revision: 00 Attached scsi disk sda at scsi0, channel 0, id 0, lun 0 SCSI device sda: 321672959 512-byte hdwr sectors (164697 MB) sda:
うまくいくと,このような感じのメッセージが書き込まれているようです.
今回の場合は,/dev/sdaとして認識されていますので,後は普通のHDDとしてFDISKでパーティションを分けてフォーマットをしてマウントをすれば使えます.
ドライバの自動読み込み †
作成したドライバをmodulesディレクトリに格納する.
# install hpt37x2.o /lib/modules/2.4.27-0vl7/kernel/drivers/scsi/
/etc/modules.confに追加する.
# HPT372 alias scsi_hostadapter hpt37x2 probeall block-major-8 scsi_mod sd_mod hpt37x2 options -k hpt37x2
設定ツール †
マニュアルに従ってインストールが可能.
(補足)Kernelモジュール †
Kernelを調べてみると、類似のIDEコントローラのチップ HighPoint? 370があったので,こちらも試してみた.結果としてはこちらはダメでした.
- ATA/IDE/MFM/RLL support - IDE,ATA and ATAPI Block device - Support for IDE Raid controllers - Highpoint 370 software RAID
の項目を<M>にチェックする.Vine-3.1では元々モジュールとして組み込まれていた。
# insmod hptraid
として,モジュールを組み込んでみると,既に構築してある[[Software RAID:RAID]]の方の挙動がおかしくなる.(hda3+hdb3,hda5+hdb5,hda6+hdb6でそれぞれ3つのRAIDを構築しているがランダムに片方のディスクがfailになってしまう.)