ほとんどの場合、設定をソフトウェアで行って EEPROM に保存するタイプのカードでは、カードの IRQ, I/O, メモリアドレスその他を設定するにはマシンを DOS で起動してベンダが提供した DOS 版のプログラムを使います。 ありがたいことに、この設定は普通は一度だけ行えばよい筈です。
もしお使いのカード用の DOS のソフトウェアをお持ちでない場合、 そのカードの製造者の WWW サイトで探してみてください。 サイトの名前が判らないときは www. ベンダ名 .com というのを、 「ベンダ名」のところを製造者の名前にして試してみましょう。 これは SMC, 3Com, その他本当にたくさんの製造者で有効です。 (訳注: SMC 製のカードなら www.smc.com を試してみろということです。 日本の会社なら www. ベンダ名 .co.jp になりますね。)
中にはここに一覧されているような
Linux 版の設定ユーティリティが存在するカードもあります。
Donald は Linux 上で走る小さなカード診断プログラムをいくつか書きました。
それらのほとんどは彼が様々なドライバを書く際に作ったデバッグ用の
ツールから生まれたものです。
だから素敵なメニュー形式のインタフェースは期待しないでください。
そのツールのほとんどは、ソースコードを読まないと使えないでしょう。
お持ちのカード用の診断ソフトが無い場合でも、cat /proc/net/dev
と入力すれば、そのカードが起動時に検出されているかどうかなど
何らかの情報を得られます。
どちらにしても、これらのプログラムの大半は
(ポートへの読み書きを許可するために) root
で実行する必要があり、先に ifconfig eth0 down
というコマンドで
ネットワークカードをシャットダウンしておいたほうが良いでしょう。
wd80x3 のカード向けには、Linux の ftp サイトに wdsetup-0.6a.tar.gz
という名前で置かれている wdsetup
というプログラムがあります。
これはあまりメンテナンスされてなく、ずいぶん長いこと更新もされていませ
ん。
もしこれがうまく動けばしめたもの、駄目だったら、カードに付いていた筈の
DOS 版のプログラムを使ってください。
DOS 版を持っていませんか?大丈夫、SMC セットアップ・ドライバディスクは
SMC の ftp サイトで見つかります。
もちろん、このユーティリティは EEPROM が載っているカード専用です。
旧式の wd8003 カードといくつかの wd8013 クローンは、
ジャンパを使ってカードを設定します。
Digital EtherWorks 3 シリーズのカードには、
DOS 版の NICSETUP.EXE
と同じような設定プログラムが使えます。
David C. Davies は、 EtherWorks 3 用のドライバと一緒に
この設定プログラムとその他のツールを作りました。
手近な Linux の ftp サイトの
/pub/linux/system/Network/management
ディレクトリで、
ewrk3tools-X.XX.tar.gz
というファイルを見つけてください。
ナショナル・セミコンダクタの DP83905 を使用したカードのいくつか
(例えば AT/LANTIC や NE2000+ など)はソフトウェアで設定ができます。
(これらのカードは wd8013 をエミュレートすることも可能です。)
Donald の FTP サーバ cesdis.gsfc.nasa.gov
にある
/pub/linux/setup/atlantic.c
というファイルを使ってこのカードを設定してください。
また、Kingston DP83905 カード用の設定プログラムは、
カード上にあるベンダ固有の情報をチェックしていないため
このチップを使用している全てのカードで使用可能なようです。
Kingston Software という URL にある
20XX12.EXE
および INFOSET.EXE
を入手しましょう。
NE2000+ のカードを設定する際には、誤った設定値が問題を 引き起こすことに気をつけてください。よく起きる例は EEPROM 上で (付いてもいない) BOOT ROM を誤って VGA カードと衝突させてしまう設定を有効にしてしまうことです。 これは、コンピュータの電源を入れたときにビープ音が鳴るだけで 画面には何も表示されないという結果になります。
通常、この状態からは以下の手順で回復できます -(ネットワーク)カードを
取り外してブートし、CMOS セットアップメニューに入ります。
「ディスプレイアダプタ」は「なし」に、デフォルトのブートドライブは
「A: (お使いのフロッピードライブ)」に設定します。
また、「全てのエラー発生時に F1 入力を待つ」を「無効」に変更します。
これでコンピュータはユーザとのやり取りなしで起動するでしょう。
次に起動可能な DOS のフロッピーを(DOS 上で format a: /s /u という
コマンドを使って)作成し、前述の 20XX12.EXE
アーカイブファイル中に
ある
default.exe
プログラムをコピーします。
そして echo default > a:autoexec.bat
というコマンドを入力し、カードを全くの初期状態に戻すプログラムが
このフロッピーを使用してブートしたときに自動的に起動されるようにします。
コンピュータの電源を切り、NE2000+ カードを再び取り付け、
作成したフロッピーをセットし、再び電源を入れます。
まだビープ音がするでしょう。しかし最後にはフロッピーからのブートに
伴ってフロッピードライブのライトが点滅する筈です。
default.exe
が終了したしるしにフロッピーの動作が止まるまで
1, 2 分待ち、電源を切りましょう。フロッピーを抜いてもう一度電源を入れれば
ビデオの機能が復活している筈なので、CMOS 設定を元に戻し、
カードの EEPROM 設定をお好みの値に変更することができるでしょう。
もし DOS に慣れていないなら、default.exe
プログラムが
自動的に起動する DOS のブートディスクを使う代わりに、
Donald の(正しいオプションを付けた) atlantic
プログラムが
自動的に起動するようにした Linux のブートディスクを使用して
上記と全く同じことができます。
3Com Etherlink III 系のカード(例えば 3c5x9)は、
Donald が作った別の設定ユーティリティで設定ができます。
これらのカードを設定するには、
Donald の FTP サーバ cesdis.gsfc.nasa.gov
から
/pub/linux/setup/3c5x9setup.c
を入手してください。
(Etherlink III 系の中でも新しい `B' シリーズ向けである
DOS 版の 3c5x9B 設定ユーティリティにはより多くのオプションがあります。)
Donald が書いたこれらの診断プログラムは以下の URL から入手できます。 イーサネットカードの診断プログラム
Allied Telesis AT1700 − cesdis.gsfc.nasa.gov
で
/pub/linux/diag/at1700.c
というファイルを探してください。
Cabletron E21XX − cesdis.gsfc.nasa.gov
で
/pub/linux/diag/e21.c
というファイルを探してください。
HP PCLAN+ − cesdis.gsfc.nasa.gov
で
/pub/linux/diag/hp+.c
というファイルを探してください。
Intel EtherExpress − cesdis.gsfc.nasa.gov
で
/pub/linux/diag/eexpress.c
というファイルを探してください。
NE2000 クローン − cesdis.gsfc.nasa.gov
で
/pub/linux/diag/ne2k.c
というファイルを探してください。
一般的となった NE2000-PCI クローン向けには PCI 版もあります。
RealTek (ATP) Pocket adaptor − cesdis.gsfc.nasa.gov
で
/pub/linux/diag/atp-diag.c
というファイルを探してください。
その他のカード全て −
問題のカードについてカーネルが持っている情報を調べるには、
cat /proc/net/dev
および dmesg
というコマンドを試してみてください。