【編集部注】本記事で扱ったBusmasterを認識しないというトラブルについては「補遺」にて解消しております。併せてお読みください。
サーバー用途ならXは要らないし、日本語もまず不要なのだが、一応動作確認ということで最初はワークステーションパッケージを選んでインストールしてみた。XFree86では、自動検出で“CyberBlade(Generic)”が選ばれ、そのまま無難に動作してしまった(写真8)。その他の問題も一切無く、あっけなくインストールは完了。再起動すると素直に立ち上がった。ちなみにこの時点では音が一切ならないが、こちらはsndconfigをかけると、VIAのAC'97 Codecを自動検出。問題なく設定は完了し(写真9)、再起動後はサウンド再生も問題なく出来るようになった(写真10)。
【写真8】インストール完了後のデスクトップ。サイズは1,024×768ピクセルを選択 | 【写真9】sndconfigを実行すると、対話式メニューで設定が進む。終了後は/etc/modules.confに設定が書き込まれ、再起動すると設定が有効になる | 【写真10】XMMSでMP3ファイルの再生中。画面はしばしば描画が間に合わなくなるが、再生自体は途切れずに行なわれた |
さて、次はファイルサーバーである。一応念のため、フルパッケージを選んでRedHatをインストールしなおしてから、設定にかかったほうが良い(理由は後述)。Sambaを立ち上げて設定を行なう手順はすでにあちこちに解説があるし、かなり長くなるので今回は割愛する。一応手順どおりに行なえば問題なく立ち上がり、ちゃんとクライアントからもアクセスできるのだが、SambaのフォルダをWindows XP Professionalからマウントし、HDBenchをかけてみると散々たる結果になってしまった(写真11)。Read 1.8MB/Sec、Write 2.0MB/Secというのは幾らなんでも遅すぎる。
そこでhdparmを使って現在の状況を確認してみると、using_dmaの項目が0、つまりDMA転送が行なわれていない。だが、DMA転送を有効に切り替えようとすると、“Operation not permitted”と怒られて変更できない。ちなみにローカルでの転送速度を確認してみると、わずかに2.4MB/sec。なるほどHDBenchの成績が悪いのも無理はない(写真12)。
【写真11】前回の記事の写真1との数字の差を比較して欲しい。しかし、何でFileCopyだけが数字が大きくなるのかが謎である | 【写真12】hdparm HDDデバイス名で現在の動作モードの簡単表示(-iをつけるとドライブ自体の詳細表示が行なわれる)。hdparm -d1 -X69 HDDデバイス名で動作モード設定(-d1がDMA転送有効、-X69はUltraDMA mode5の指定)。hdparm -t HDDデバイス名で簡単なベンチマークを行なってくれる |
手順はというと、
} via_isa_bridges[] = {
{ "vt8233", PCI_DEVICE_ID_VIA_8233_0, 0x00, 0x2f, VIA_UDMA_100 },
{ "vt8231", PCI_DEVICE_ID_VIA_8231, 0x00, 0x2f, VIA_UDMA_66 },
となっているところを
/*
* VIA SouthBridge chips.
*/
} via_isa_bridges[] = {
{ "vt8233", PCI_DEVICE_ID_VIA_8233_0, 0x00, 0x2f, VIA_UDMA_100 },
{ "vt8231", PCI_DEVICE_ID_VIA_8231, 0x00, 0x2f, VIA_UDMA_100 },
に修正する(3行目の最後の定義を"VIA_UDMA_66"→"VIA_UDMA_100"に変更)。また、中ほどにある関数"pci_init_via82cxxx(struct pci_dev *dev, const char *name)"の中の
via_80w = 0;
if (via_config->flags & VIA_BAD_CLK66) { /* Disable Clk66 */
となっている個所を
/* via_80w = 0; */
if (via_config->flags & VIA_BAD_CLK66) { /* Disable Clk66 */
と変更する(つまり"via_80w = 0;"の行をコメントアウト)。変更を確認後、セーブする。
(4) /usr/src/linux-2.4.7-10/でmake mrproperを実行してから、make xconfigを実行する。GUIが立ち上がったら、"ATA/IDE/MFM/RLL Support"の中の、"IDE, ATA and ATAPI Block device"の項目を選び、"Generic PCI bus-master DMA support"と"VIA82CXXX chipset support"の2つを"y"に設定する。設定が終わったら、"Save and Exit"を選んで完了(写真13)。
(5) カーネルを再構築する。
(6) ブートローダーに登録する。
といった具合だ。ちなみに、一連の作業に必要な時間は約30分ほどだった(カーネルのビルドに約25分ほど)。
【写真14】00:11.0にVT8231があり、この子デバイスとして11.1にBusMaster IDEが見えてるので、認識できないわけではないと思うのだが、lspciの結果をそのままドライバが使ってるわけでもないので、どこで認識ミスが発生しているのかは今回突き止められなかった |
ちなみに上述のVIAの説明によれば、C3プロセッサを使っている場合はカーネルパラメータで
・プロセッサタイプを"Pentium III(Coppermine)"から"K6/K6-2/K6-III"に変更
・SMP(Symmetric Multi Processor)のサポートをDisable
にすべきだとあるのだが、これをやったところEthernetカードが2枚とも見えなくなるという不思議な現象が出てしまい、こちらも解決しなかった。EPIA-533のチューニングは、もう少し本腰を入れてやらないと面倒なことになりそうだ。
そういうわけで、2MB/Secかそこらしか出ないのではファイルサーバーとして失格であり、WebあるいはFTPでもこの状況は変わらない。もちろんADSLなどで公開サーバーを立てるならこれで十分(回線のUpLinkが512kbps~1Mbps、つまり50KB/Secから100KB/Sec程度)なのだが、LAN内ではちょっとこのスピードは耐えられないだろう。
(*2) サーバー/ルーターの類を設定するときの基本は「余分なものはいれない」である。例えばXを入れても単に遅くなるだけで、メリットはない。しかも潜在的なセキュリティホールが増えることになる。 が、これはパッケージや構成を確認する環境を別に用意して、こちらで動作を確認できる場合には通用しても、これから初めてルーターを作りますなんて人にはあまり向かない。もちろんゲームなんぞ入れる必要はないのだが、Linuxはディストリビューションごとにパッケージの依存関係が違うため、最初は丸ごとインストールもそう悪いものではないと筆者は思っている。 その後に、立ち上がる不要なサービス類を手動で止めて行く方が判りやすい。HDDは無駄になるが、RedHat 7.2JのFTP版をフルにインストールしても高々2GBちょいであり、気にするほどの量でもないだろう。 |
【写真15】最終的には5.85MB/Sec弱までいった。 |
環境を再び図1に戻し、
iptables -t nat -A POSTROUTING -s 192.168.20.0/8 -o eth0 -j MASQUERADE
というコマンドを一発実行させた。ちなみにPC1側がeth0、PC2側がeth1である。この環境で、先ほどの約700MBのファイルを再びIriaを使ってダウンロードしてみた。結果はというと、写真15の通り5.8MB/Secあまりのスループットが出た。bps換算で46Mbps強だから、Windows XPの時と比較して、かなりの性能向上が得られる事が判る。
今回のテストはGNOMEを動かしっぱなし、カーネルチューン一切なしと言う状況だから、このあたりをチューニングすればもう少し高速になる可能性があるが、ただパケットフィルタリングを行なうとその分オーバーヘッドが出るわけで、ほぼ相殺されると思って良さそうだ。だとしても46Mbpsはかなりのもので、Bフレッツを含めてほとんどの場合で不自由はなさそうだ。
EPIA-533を使ってのファイルサーバー/ルーター構築を一通りご紹介した。BusMaster IDEに関してはちょっとミソをつけた形になったが、それ以外はWindows/Linuxとも、特に問題なく動作した。特にWindowsに関しては、あまりのトラブルの無さに拍子抜けするほどである。その意味では、Linuxの方がまだ色々悩めそうである。特にBusMasterに関しては、他のディストリビューションを色々試してみたいところだ。
もっともここまででは紹介してこなかったが、変なことはまだあったりする。この製品にはFDDインターフェイスが無いかわりに、USB HDDからブートできるという機能がある。そこでノバックの「HDDもっとはい~るKIT」を使って3.5インチのIDE HDDを接続してみたのだが、まるっきりアクセスしてくれない。
使われているコントローラは飛鳥のFireUSB-1で、割合最近はメジャーなコントローラなのだが、どうも対応していないようだ。どこのUSBコントローラに対応しているかがどこにも記載されていないので、最終的には数を集めて総当りテストでもしてみるしかなさそうだ。
そんなわけで、普通に使う分には極めて当たり前の様に動作するが、その先は色々茨の道が待ち構えていそうである。そういった事を含めて楽しめるなら、このマザーはかなり買いだろう。昨今は価格も12,800円程度まで大幅に下がったようで、気軽に人柱になりやすい(?)製品といえそうだ。
□VIAのホームページ(英文)
http://www.via.com.tw/
□製品情報(英文)
http://www.viavpsd.com/products/epia_mini_itx_spec.jsp
□関連記事
【5月2日】ファンレスマザーボード「EPIA-E533」活用記
~DVD再生で静音デスクトップPCとしての実力を見る
http://pc.watch.impress.co.jp/docs/2002/0502/eden.htm
【5月9日】ファンレスマザーボード「EPIA-E533」活用記
~ファイルサーバー兼ルーターを構築/Windows編
http://pc.watch.impress.co.jp/docs/2002/0509/eden2.htm
(2002年5月9日)
[Reported by 槻ノ木隆]