Linux Tips

ネットワークカードを認識させるには

北浦訓行
2001/5/31

 Linuxでの動作実績があるPCIバス用のNIC(Network Interface Card)を装着したPCであっても、Linuxインストール時に自動認識されないことがある。原因は実にさまざまで、これといった解決法はないのだが、以下の手順でNICが使えるようになることがある。

 まず、ifconfigコマンドでeth0が認識されているかどうかを確認する。また、lsmodコマンドで読み込み済みのモジュールも確認する。

本来なら表示されるはずのeth0が表示されない(画像をクリックすると拡大表示します)

 もし、モジュールが読み込まれていない場合は、modprobeコマンドでモジュールを読み込み、lsmodコマンドで読み込まれたか確認する。

modprobeコマンドで、epic100モジュールを組み込む(画像をクリックすると拡大表示します)

 もう一度ifconfigコマンドを実行して、eth0が読み込まれていない場合はeth0 upオプション付きでifconfigコマンドを実行する。

eth0 upオプションを付けてifconfigコマンドを実行する(画像をクリックすると拡大表示します)

 再度、ifconfigコマンドでeth0が認識されているかどうかを確認する。

eth0が認識されたが、IPアドレスなどが表示されていないので正常に動作していない(画像をクリックすると拡大表示します)

 上の画面のように、IPアドレスなどが正しく表示されないときは、networkを再起動する。

# /etc/rc.d/init.d/network restart

 念のため、ifconfigコマンドでeth0の状態を確認する。これでもNICが正常に動作しないときは、I/OアドレスやIRQなどが重複している可能性がある。それは、/proc/ioports/proc/interruptsをcatコマンドで表示すると分かる。

catコマンドで/proc/ioportsと/proc/interruptsを確認する(画像をクリックすると拡大表示します)

 上記の例だと、どちらにもeth0(またはNICのドライバ)が見当たらないので、I/OアドレスもしくはIRQの重複が原因である可能性が高い。PCを再起動して、BIOSの設定で以下の項目を再設定する。

  • BIOSの[Plug & Play OS]をOFFにする
  • 使用しないポート(例えば、シリアルポートのBやパラレルポートなど)をDisabledにする

 設定を保存したらLinuxを起動して、ifconfigコマンドでeth0の状態を確認する。

 もし、これでも正常に動作しないときは、一度PCの電源を切って、NICが装着されているPCIバスの位置を変える。これで、I/OポートやIRQが再設定されて、NICが使用できるようになるはずだ。また、もし/etc/conf.modules(Turbolinux 6.xでは/etc/modules.conf)に「alias eth0 xxx」などと使用しているNIC以外のモジュールが組み込まれていたら、それを正しいモジュール名に変更する。

Linux Tips Index



 Linux Squareフォーラム Linux Tipsカテゴリ別インデックス
インストール/RPM ブート/ブートローダ
ファイル操作 環境設定
ユーザー管理 コンソール/ターミナル
X Window System セキュリティ
トラブルシューティング 他OS関係
ネットワーク ハードウェア
Webサーバ Samba
GNOME KDE
OpenOffice.org エミュレータ
ソフトウェア そのほか/FAQ
全Tips公開順インデックス Linux Tips月間ランキング
Linux Squareフォーラム全記事インデックス

MONOist組み込み開発フォーラムの中から、Linux関連記事を紹介します


Linux & OSS フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Linux & OSS 記事ランキング

本日 月間