Intel I219 NICがLinux e1000eドライバで認識されなくなる

投稿者: | 2021年8月9日

自社製NUCシリーズのみならず、数多くのPCのオンボードNICとして搭載されているIntel I219 NICと、 Intel NICの Linux ドライバ として普遍的な e1000e で、 カーネル の更新後にNICが使えなくなる事例に遭遇し、最新 ドライバ を適用したり、 カーネル をダウングレードを試みますが。

症状

以前にも分解してみたことのある、第8世代Intel Corei7搭載のLenovo ThinkCentre M90n-1 Nanoに、Ubuntu 20.04.2の入ったUSB外付HDDを繋いでGUI付の汎用サーバ用途で使い始めたそうなのですが、ある日パッケージ更新したら有線LANが使えなくなったとのことで、相談を受けました。

図01.Lenovo ThinkCentre M90n-1 Nano

図01.Lenovo ThinkCentre M90n-1 Nano

GUIでは有線LANデバイス情報が見えず、状況の把握すら難しいのでターミナルを開いて、まずは起動ログから有線LANに関するエントリを抽出してみます。

最後のエントリでerror -2とあるのですが、調べてみてもかなり昔から見掛けるエラーな割に、何を意味するのかいまいち判らず。さらにいくつか他のコマンドを試してみます。

ハードウェアとドライバに関する情報をまとめると以下の通り。

  • Hardware: Intel I219-LM rev.30
  • Driver  : e100e v.3.2.6-K (Kernel)

ハードウェアの情報では、有線LANコントローラは UNCLAIMED となってしまっていました。

 

Interl公式サイト最新ドライバを当てる

Intelのダウンロードセンタにて、Linux向けの最新ギガビットNICドライバをダウンロードしてみます(本稿執筆当時最新ver.3.8.4)。

dmesg でNVM Checksumエラーが挙がっている場合、 /src/nvm.c のNVM Checksumチェックを無効にしてしまう改変をしてからインストールするのですが、今回は該当しないことからそのままインストールします。

まず、ソースのコンパイルに必要なパッケージがインストールされていることを確認。

ソースファイルのあるフォルダへ移動して make install するもエラー終了。

こうした場合に再度トライするには、一度残骸をきれいに掃除する必要があります。

結局何度試してもエラー終了でした。

 

SourceForge最新ドライバを当てる

もう少し調べを進め、Intelダウンロードセンタよりもバージョン番号の進んだドライバを、SourceForgeのプロジェクトページに見つけました。

上記プロジェクトページを【Files → e1000e historic archive】と進んだこちらに、バージョン毎のソースが格納されています(URIに空白を含むことに注意。本稿執筆当時最新ver.3.8.7)。

インストール成功したので、現在のドライバを抜いてこの新しいドライバをロードします。

ここで有線LANの状態を確認するも状況は全く変わらず。再起動後も新しいドライバを読み込むよう、更新してから再起動してみます(tainting kernelのメッセージが出ても、そのドライバのロードや動作には支障は有りません)。

再起動後もドライバは確かに最新版をロードしていますが、相変わらず有線LANはUNCLAIMEDのままです。

 

ドライバのアンインストール

インストールしたドライバのアンインストールは、インストールに使ったソースが残っていれば、以下の要領で行えます。

 

HWEカーネルを抜いてダウングレードしてみる

SourceForgeのページにも記述されている通り、e1000eドライバは基本的にKernel内包形式でリリースされるようになっています。また、OSインストール時には有線LANは使えていたことから、カーネルをダウングレードしてみたらどうでしょう。

まず現在のカーネルはログインメッセージから、HWE 5.8系であることがわかります。

ここで最近のUbuntuの採用カーネルについて、こちらの記事が参考になりました(公式に該当コンテンツ見当たらず)。

*** 但し、記事中 Ubuntu 20.04.2のSupport Untilは正しくは2025年。

簡単に抜粋すると次のようなバージョン関係になります。

  • Ubuntu 20.10-  : 5.8
  • Ubuntu 20.04.2 : HWE 5.8
  • Ubuntu 20.04   : GA 5.4
  • Ubuntu 18.04   : GA 4.15

以上はDesktop版での話であり、Ubuntu Serverは常にGA版Kernelがデフォルトで採用されているので、20.04.2でも手動でHWEカーネルを追加しなければGA版5.4系のはずです。

それではあらためて現在のカーネルバージョンを確認した後、GA系の5.4カーネルをインストールします。

これで再起動すれば、再起動時のGRUBメニューで5.4カーネルを指定して起動出来るのですが、ssh越しで作業しているのでHWE 5.8系カーネルを抜き、確実に5.4カーネルするように仕向けます。作業の途中に何度か、現在実行中のカーネルを削除しようとすることに対して、中止を促すダイアログが現れますが「いいえ」を選択して作業を進めます。

アンインストール後の後処理を進めます。

再起動後ログインして、確かに5.4系カーネルになっていることを確認しますが、有線LANデバイスはUNCLAIMEDのままでした。

尚、本項の作業に於いては、こちらの記事を参考にさせて頂きました(鳴謝!)。

 

結局

万策尽きました。PCの内蔵ストレージに残っているWindows10から起動したところ、有線LANは問題なく使えたことから、ハードウェアやファームウェアの損傷でもないようです。とは言え、WindowsはLinuxよりもこのデバイスに対し、寛容的に振る舞うようなので、その辺りの差異に属する部分に原因はあるのかも知れませんが、これ以上は掘り下げずにOS再インストールを提言して返却しました。

いずれ自分のマシン更新の際も、おそらく似たようなハードウェアになることから、そのときは

  • OSインストール前のBIOS、ファームウェア類の更新(内蔵Windowsにて)
  • Intel BootUtilを使ったトラブルシューティング (→参照

を試してみるつもりです。

 

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA