FastTrak100をFreeBSDで使う

ホーム ] 上へ ] Tex on Windows ] [ FastTrak100をFreeBSDで使う ]

最終更新日: 03/02/21     藤岡研外部からのアクセス数: 

 

 21世紀、元旦、研究室のメールサーバーのディスクがふっ飛んで、正月早々、メールサーバーの再構築を余儀なくされました。年末のメールが全て消えてしまい、教授から、「メールサーバーの信頼性を高くしろ」との命令が下され、メールサーバーのディスクをミラーリングすることになりました。

 どんなシステムにしようかと考え、Webページを調べて回っていたとき、目に止まったのがPromise 社製 FastTrak100 でした。これは、PCI スロットに挿す IDE RAID カードで、実売価格1万円程度で手に入ります(2001年1月現在)。これは、安い。RAID コントローラとディスクが一体となった RAID システムを購入すると、30GB くらいで、数十万なんて値段がついているのが一般的。FastTrak100を使えば、カード+HDD (IDE) 2台で、4万円程度で 30GB のミラーリング・ディスクができてしまう。ホット・スワップはできないけど、研究室のシステムだから、システム復旧までの時間が1時間以内なら特に問題なし。

 問題は、FastTrak100 がサポートしている OS が、Windows のみということ。いくらなんでも、Windows 上でメールサーバーを動かすのは嫌だ。最近、そういうシステムも増えているようだが、大学の、しかも理系の研究室のメールサーバーが Windows 上で動いているとなっては、御先祖様に申し訳が立たない (なんのこっちゃ)。やはり、FreeBSD86 か、Linux 上で動かしたいものである。

 Web ページの検索をしてみたところ、FreeBSD や Linux 上で FastTrak100 を動かしたという事例がみあたらない。やはり駄目かな・・・、とおもっていると、FreeBSD86 4.2 のリリースノートに、FastTrak をサポートしましたと書いてあるではありませんか。でも、まだちょっと不安がある。FastTrak をサポートしたとは書いてあるが、FastTrak100 をサポートしたとは書いていない。FastTrak には、ATA-100 の FastTrak100 と、ATA-66 の FastTrak66 がある。FastTrak100 が発売されたのはつい最近みたいだ。となると、このリリースノートに書いてあるのは、FastTrak66 のことではないか・・・?。

 調べてみたが、分からないので、とりあえず買って試してみることにした。駄目なら、別の Windows マシンに入れて、ストライピングでディスクを高速化しよう。

 ということで、Promise FastTrak100 と U-ATA100 の IDE HDD 2台を購入して、トライしてみました。PCIスロットに FastTrak100 を挿し、HDD を両方ともマスターに設定して、2本の IDE ケーブルで FastTrak100 に接続。FastTrak100 は、マザーボードからは SCSI ディスクコントローラとして認識されるので、マザーボードの BISO 設定をいじって、SCSI デバイスからブートするようにします。それまでつながっていた IDE の HDD を外した場合は、IDE の設定を none にしておかないといけません。リブートすると、FastTrak100 の BISO 画面が現れ、マニュアルに従って、ミラーリングするように設定します。続いて、FreeBSD のインストールに移ります。FreeBSD86 4.2-Release の kernel と mfsroot のフロッピーディスクを用意し、まずは kernel のフロッピーを挿入して、PCを起動します。mfsroot のフロッピーを挿せと言ってくるので、フロッピーを入れ換えてやると、OS のブートが始まり、いろいろなデバイスの認識結果が画面に表示されます。その中に、Promise FastTrak100 と言う文字が見える!  いとも簡単に認識してくれました。但し、通常の IDE のディスクに比べると、ブートに時間がかかります。途中でハングアップしたように見えますが、ちょっと我慢して待ってください。

 あとは、通常のインストールと同じです。なお、ドライブ名は ar0 となるようです。ar0 以外に ad4 と ad6 というドライブが表示されますが、これは選んではいけないようです (未確認)。

 OSのインストールができたら、ディスクが壊れた場合を想定し、一方のディスクを抜いてみましょう。ちょっと恐いけど、システム稼働状態でケーブルを引き抜いてみると・・・、ディスクの読み書きができなくなりました。さすがに、そのまま稼働というわけには行かないようですね。

 この状態でリブートすると、FastTrak100の BISO 画面で、ディスクトラブルが発生した旨表示されて、いったん停止します。ここで、復旧する方法として、

  1. 壊れたディスクを、新しいものと入れ換え、ミラーリングの再構築を行う。
  2. 正常な方のディスクを FastTrak100 に挿したまま、利用する。
  3. 正常な方のディスクを、IDE のディスクとして利用する。

 1. の場合、壊れたディスクを新しいものと入れ換えてPCを起動すると、FastTrak100 の BISO 画面で停止します。Ctrl+F を押し、<5> Rebuild Array すると、ディスク内容がコピーされて、復旧できます。但し、新しいディスクは、使用中のディスクと容量が同じか、大きくないといけません。

 2. の場合、ミラーリングからストライピングにモードを変更してやります。BIOS 画面で Ctrl-F を押し、<3> Define Array で、モードを変更します。とにかく障害復旧したいという場合は、これが良いでしょう。

 3. の場合、HDD を FastTrak100 から外し、通常の IDE のコネクタに接続します。すると、そのまま、IDE のディスクとして読み書きできます。もちろん、元のデータも残っています。但し、ディスクにアクセスするドライバが変わりますのでデバイス名が変わります。マウントの設定等を変更してやらないといけません。FastTrak100 自体が故障した場合で、替わりののカードが無い場合は、この方法に頼らざるをえません。

 とりあえず、2. か 3. でシステムを立ち上げ、代替ディスク (代替カード) が手に入ったら、再びミラーリングするということも可能です。この場合、BIOS 設定メニューの <5> Rebuild Array では再ミラーリングできないようです。<4> Delete Array でいったん削除し、<3> Define Array してやると、再度ミラーリングできます。このとき、データをコピーする元のドライブ指定を間違わないように気をつけてください。

 初めて FastTrak を導入するときは、必ず、ミラーリングの復旧を試してみましょう。重要なデータのつまったディスクが故障したとき、操作を誤ると、せっかくミラーリングされて残されていたデータも、消えてなくなってしまうかもしれません。

 トラブル時にどうしてもシステムを停止したくないという場合は、3台のディスクを用意しましょう。1台をスペアディスクとしてつないでおくと、トラブルが発生したとき、自動的に、故障したディスクとスペアディスクを入れ換えてくれるそうです (これは、試してみていませんが)。

 うちでは、ミラーリング (RAID Level 1) して、信頼性を高めるのに利用していますが、もちろん、ストライピング (RAID Level 0) して、高速化も可能でしょうし、これらの組合わせ (RAID Level 0+1) も問題なくできるでしょう。

 

Mail to: < miura@ise.eng.osaka-u.ac.jp >