Linuxでサーバー用の自作PCを組む際、マザーボードの選び方には十分な注意を払わなければならないことを、今回身をもって学びました。
最新すぎるCPUやメモリがLinux(古いカーネル)でサポートされていない場合があることは知っていましたが、まさか「マザーボードのオンボードLANチップ」まで非対応の罠があるとは……。
今回は、丸2日間ネットに繋がらずに悩んだ挙句、物理的なアプローチで解決した体験談を備忘録として残しておきます。
発生した問題:Linuxインストール後にネットに繋がらない!
今回私が購入したマザーボードは、ASUS製の「P8H77-V」です。
Ivy Bridge世代のCPUが使えて、メモリもある程度良いものが搭載できる、当時としては非常にコストパフォーマンスの良いボードです。Linuxが動くという事前情報も少し見かけていたので、安心して購入・仮組みを行いました。
ハードウェアの組み上げも終わり、いざLinuxをインストールして起動してみると……
インターネットに繋がらない!!
ifconfig などを叩いてもネットワークインターフェースが正常に認識されていません。
原因:Qualcomm Atheros製LANチップのLinuxドライバー不足
原因を調べてみると、このマザーボードに搭載されているオンボードLANチップ(Qualcomm Atheros製)のLinux向けドライバーが、標準で組み込まれていないことが判明しました。
当然ASUSの公式サイトを見に行っても、Windows用のドライバーしか提供されていません。
有志が作成した野良ドライバーを探してみたりもしましたが、LinuxのカーネルOSバージョン(Kernel 3.x系など)によってはコンパイルが通らず使えないなど、泥沼の様相を呈してきました。
解決策:おとなしく「Intel製LANカード」を増設する
サーバーとして長時間稼働させることを考えると、無理やり野良ドライバーを入れてカーネルアップデートのたびに怯えるような「不安定要素」は抱えたくありません。
そこで、ソフトウェア側での解決をスパッと諦め、PCパーツショップでIntel製のPCIe LANカード(ネットワークアダプタ)を購入してきました。
マザーボードのPCI ExpressスロットにこのIntel製LANカードを挿し込み、LANケーブルを繋ぎ直してLinuxを起動。
……なんと、あれだけ丸2日間悩んでいたインターネット接続が、挿した瞬間に嘘のようにあっさりと繋がりました!
LinuxカーネルはIntel製のネットワークチップ(NIC)のドライバーを標準で手厚くサポートしているため、基本的には「挿すだけで(Plug and Play)」認識してくれます。
まとめ:Linuxサーバー構築時の教訓
今回のトラブルから得た教訓は以下の通りです。
- オンボードLANのチップメーカーを確認する
- Linuxを入れる前提なら、購入予定のマザーボードに乗っているLANチップがカニさん(Realtek)なのか、Atherosなのか、Intelなのかを事前に調べておきましょう。
- Intel製LANカードを1枚ストックしておく
- 価格.comなどのレビューを見ても、Intel製のLANカードは非常に安定性が高く信頼されています。価格は数千円と少々張りますが、Linuxを触るなら「お守り」として1枚持っておいて損はありません。
根本的なドライバー解決策ではありませんが、「安定稼働」と「自分の時間」をお金で買うのも、サーバー構築の立派な手段ですね。同じようにオンボードLANが認識せずに悩んでいる方は、ぜひ試してみてください。