Kabylake+Z270なマザーでUbuntu 16.04が使えた -ネットワーク(イーサーネット)のみ設定が必要
最近PCの老朽化が著しく、KabylakeなIntel Core i7 7700Kに買い換えた。インストールは無事終わったのだが、唯一イーサーネットアダプタのみ認識してくれない。Intelからドライバをダウンロードすることでなんとかなったので、ご紹介。
私が購入したのは下記の製品。
Z270 + Kabylakeだと、初期状態でIntelのイーサーネットを認識しない
Z270チップだと、基本的にIntelの1000BASE/Tのイーサーネットコネクタがオンボードで設置されているようである。
$ sudo lspci | grep Ethernet
00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (5) I219-V
ただし、Ubuntuの標準状態では下記のようにチェックサムエラーと言われて、ドライバがロードされていない。
*********** kernel: [ 1.089863]e1000e 0000:00:1f.6: TheNVMChecksumIsNotValid
Intelの公式サイトから、Linux用のドライバをインストールする
結論から言ってしまうと、「e1000e」のモジュールでnvmのチェックサムを無視する改変してロードすれば、イーサーネットアダプタを利用することが出来るようになる。
I219-Vのドライバをダウンロードする
まずはIntelの公式サイトからドライバをダウンロード。といっても、Ubuntuからはダウンロードできないので、他のPCでDLしたあとにUSBメモリなどで入れ込む。
Checksum Is Not Validならチェックサムをしないように改変する
その後、解凍した後のファイルのなかにある「nvm.c」を開き、「e1000e_validate_nvm_checksum_generic」関数が何もしないよう、下記のような形で編集をする。
s32 e1000e_validate_nvm_checksum_generic(struct e1000_hw *hw)
{
return0;
}
コンパイルしてmodprobe
このあと、make & make installを行い、modprobeを行えば正常に動作するはず。
$ make$ sudo make install$ sudo modprobe e1000e
認識していることを確認。
$modinfoe1000efilename:/lib/modules/4.4.0-59-generic/kernel/drivers/net/ethernet/intel/e1000e/e1000e.koversion:3.2.6-klicense:GPLdescription:Intel(R)PRO/1000NetworkDriverauthor:IntelCorporation,[email protected]
改変版e1000eをブート時に読み込むようにする
自動的にロードするように/boot配下のinitramfsに念のため変更をかける
$ sudo update-initramfs -u
再起動して、認識しているか確認してみる
$cat/var/log/kern.log| grep e1000e
kernel:[0.848116]e1000e:Intel(R)PRO/1000NetworkDriver-3.2.6-kkernel:[0.848117]e1000e:Copyright(c)1999-2015IntelCorporation.kernel:[0.896737]e1000e0000:00:1f.6:InterruptThrottlingRate(ints/sec)settodynamicconservativemodekernel:[1.190969]e1000e0000:00:1f.6eth0:registeredPHCclockkernel:[1.190971]e1000e0000:00:1f.6eth0:(PCIExpress:2.5GT/s:Widthx1)2c:4d:54:55:2e:5ckernel:[1.190972]e1000e0000:00:1f.6eth0:Intel(R)PRO/1000NetworkConnectionkernel:[1.191150]e1000e0000:00:1f.6eth0:MAC:12,PHY:12,PBANo:FFFFFF-0FFkernel:[1.191543]e1000e0000:00:1f.6******:renamedfrometh0kernel:[6.293172]e1000e:******NICLinkisUp1000MbpsFullDuplex,FlowControl:Rx/Tx
これで無事インターネットに接続できるようになる。
ちなみにOCは?性能アップは?
i7 7700Kはそんなに評判が良くない(所詮はSkylakeのリフレッシュだろ、と言われている)が、これまでIvyBridgeで必至にエンコードをしていた身としては、それなりに速度が出ているなという印象。
なお、購入はAmazonが一番安かった(スタートダッシュで4万円ちょいで買えた。入荷待ちだが今も一番安いと思う)。
Intel CPU Core i7-6700K 4GHz 8Mキャッシュ 4コア/8スレッド LGA1151 BX80662I76700K
地道にOCなんかやってみたりしているのだが、それは別途ご紹介。
ディスカッション
コメント一覧
件の I219-V は LGA1151(≒ Skylake 以降のマザー)になってからオンボードで搭載される様になったチップですが、実は Intel 公式の Linux 向けドライバでは未だに正式対応していません。
既に搭載製品の登場から 1 年以上経ちますが、現行最新版に於いても、動作が確認されているチップに I219-V の名は有りません。(LGA1150 迄で見られた I217-V/I218-V には対応していますが、LGA1151 マザーでは見当たりませんでした)
その為 Linux では現在も自前で改造ドライバをビルドするか、ギ蟹搭載のマザーを選択するかと云う究極の選択を迫られる始末で、リモートから管理する事を前提としたサーバー用途のマシンに Skylake/Kaby Lake を使うのは難しい様です。
ちなみに、Windows 用と FreeBSD 用のドライバでは既に I219-V に対応していますので、どうしてもギ蟹は嫌と云う場合はこれらを使うという手も有ります。