LoginSignup
3
4

More than 1 year has passed since last update.

[Ubuntu 18.04/20.04] Intel e1000e インストール メモ

Last updated at Posted at 2020-08-25

参考URL

問題が起きた環境を以下コマンドで確認

$ lspci | grep Ethernet
$ modinfo e1000e
  • このとき、version: 3.2.6-kだと、上手く動いていない可能性が高い。

動かない原因の調査

$ zegrep e1000e /var/log/kern.log*
  • version: 3.2.6-kだと、チェックサムでエラーが生じていることがある。
  • 以下では、チェックサムでエラーが生じている場合に、e1000eをインストールし直して、問題に対処する方法を紹介する。

e1000eの再インストール

  • e1000eの最新版を以下のサイトからダウンロードしてUSB等で入れ、解凍する。(以下、version: 3.6.0の場合で説明する。)
  • 以下では、$HOMEの配下に解凍した状態を想定する。
  • ~/e1000e-3.6.0/src/nvm.c内の関数を編集して、チェックサムを行わないように編集する。
~/e1000e-3.6.0/src/nvm.c
s32 e1000e_validate_nvm_checksum_generic(struct e1000_hw *hw)
{
        return 0;
}

ソースのあるディレクトリに移動

$ cd ~/e1000e-3.6.0/src
$ make
$ sudo make install
  • ここでビルド中に、<linux/pci-aspm.h>がないと言われることがある。この場合は、kcompat.h#include <linux/pci-aspm.h>をコメントアウトすれば、ビルドできる。

現ドライバの削除・新ドライバの適用

  • 注意!ネット切れます!(まだつながっていない想定だが…。)
$ sudo modprobe -r e1000e
$ sudo modprobe e1000e

適用されたか確認

$ modinfo e1000e
filename:       /lib/modules/4.4.0-21-generic/updates/drivers/net/ethernet/intel/e1000e-3.6.0/e1000e.ko
version:        3.6.0-NAPI
...

一応ネットワーク再起動

$ sudo /etc/init.d/networking restart

今のモジュールを次回起動時に使用するように設定

$ sudo update-initramfs -u
  • 完了。

DKMSへの登録

  • /usr/src/配下にe1000e-3.6.0を解凍し、配置する。
$ sudo mv ~/e1000e-3.6.0.tar /usr/src/
$ cd /usr/src/
$ sudo tar xf e1000e-3.6.0.tar
$ sudo rm e1000e-3.6.0.tar
$ cd e1000e-3.6.0/

次に/usr/src/e1000e-3.6.0/dkms.confを新規作成して編集する。

PACKAGE_NAME="e1000e"
# バージョン
PACKAGE_VERSION="3.6.0"
BUILT_MODULE_LOCATION=src
BUILT_MODULE_NAME[0]="e1000e"
DEST_MODULE_LOCATION[0]="/kernel/drivers/net/e1000e/"
AUTOINSTALL="yes"
MAKE[0]="BUILD_KERNEL=${kernelver} make -C src CFLAGS_EXTRA=-DDISABLE_PM"
CLEAN[0]="make -C src clean"
REMAKE_INITRD=yes
  • 最後に以下のコマンドでDKMSに追加、ビルド、インストールを行う。
$ sudo dkms -m e1000e -v 3.6.0 add 
$ sudo dkms -m e1000e -v 3.6.0 build 
$ sudo dkms -m e1000e -v 3.6.0 install 
3
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4