I have the problem that the ethernet device on the Intel NUC is not found. ifconfig -a only shows lo and wlan0 but not eth0.

sudo lshw -C net gives the following output:

*-network UNCLAIMED
description: Ethernet controller  
product: Ethernet Connection (3) I218-V        
vendor: Intel Corporation       
physical id: 19             
bus info: pci@0000:00:19.0       
version: 03 
width: 32 bits   
clock: 33MHz   
capabilities: cap_list
configuration: latency=0   
memory:f7100000-f711ffff memory:f713b000-f713bfff 
ioport: f080(size=32)   

After running sudo lshw -C net and dmesg | grep -e eth -e e1000, I get this output:

[    0.847256] e1000e: Intel(R) PRO/1000 Network Driver - 2.3.2-k
[    0.847260] e1000e: Copyright(c) 1999 - 2014 Intel Corporation.
[    0.863337] e1000e 0000:00:19.0: Interrupt Throttling Rate (ints/sec) set to dynamic conservative mode
[    1.673743] e1000e: probe of 0000:00:19.0 failed with error -2
[ 4315.170940] e1000e: module verification failed: signature and/or  required key missing - tainting kernel
[ 4315.171534] e1000e: Intel(R) PRO/1000 Network Driver -
[ 4315.171536] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
[ 4315.171711] e1000e 0000:00:19.0: Interrupt Throttling Rate (ints/sec) set to dynamic conservative mode
[ 4315.994262] e1000e: probe of 0000:00:19.0 failed with error -2

Product information (lspci -nnk) is the following:

00:19.0 Ethernet controller [0200]: Intel Corporation Ethernet Connection (3) I218-V [8086:15a3] (rev 03)
        Subsystem: Intel Corporation Device [8086:2057]

Kernel version is 3.19.0-22. I am booting in UEFI mode. The BIOS version is the latest version.

As suggested, I updated the BIOS to the newest version, Left the device without power for a while and changed the hardware configuration. So far without luck!

I just installed Windows, and the device also isn't working there. This probably means that it's either a BIOS problem, as suggested, or the hardware is actually damaged.

Any further thoughts on this?

For others with similar problems:

In the beginning I thought this was a driver issue. I wanted to install the newest version of the e1000e driver. This requires version 8.x.x of the e1000 driver. When I tried to install this driver, I got the following error message (even though I run kernel version 3.19):

 *** Aborting the build. *** This driver is not supported on kernel versions older than 2.4.0.  Stop.

However, it turns out that the old driver on the system was working fine. The real problem has to lay somewhere else.

  • Try this: sudo modprobe e1000e and see what errors dmesg | grep -e eth -e e1000 throws.
    – Rinzwind
    Jul 21 '15 at 14:35
  • Do you have the numeric vendor/product ID of the device (12ab:34cd)? (lspci -nnk | grep -iEA3 "(network|ethernet)"
    – gertvdijk
    Jul 21 '15 at 15:59
  • Added both outputs! Jul 21 '15 at 16:21
  • The device by the ID 8086:15a3 should be perfectly supported by any recent kernel. What's the exact kernel version you're running? (uname -rv) I am guessing we're looking at a hardware initialisation error here. Is there a BIOS update available for your system? And are you booting in legacy/BIOS mode or UEFI?
    – gertvdijk
    Jul 21 '15 at 17:24
  • @gertvdijk Post is updated! Jul 21 '15 at 18:30

From the logs it seems to me you have managed to update the driver from version 2.3.2-k to

I fixed my Intel NUC non working ethernet by:

  • download the driver from https://downloadcenter.intel.com/download/15817, currently (as shown in lshw -C above)
  • make install in the src folder
  • rmmod e1000e
  • modprobe e1000e
  • and to make the new driver survive a reboot update-initramfs -u

This I have to repeat at every kernel update, since kernel updates still (3.13.0-63) contain the old driver version 2.3.2-k, which does not work with my Intel NUC.

  • It wasn't compiling due to code model kernel does not support PIC mode I changed the line EXTRA_CFLAGS += $(CFLAGS_EXTRA) into EXTRA_CFLAGS += $(CFLAGS_EXTRA) -fno-pie to fix it.
    – Natim
    Jan 26 '18 at 9:23
  • I then had to use iwconfig to grab the interface name and then sudo ifconfig enp0s31f6 up to enable it (because ifconfig wasn't showing it)
    – Natim
    Jan 26 '18 at 9:24

Written by Eugene Mihailescu: The NVM checksum is not valid

The root of the problem is in the hardware and this page goes through fixing it.

In my case it was as simple as downloading the Linux version of bootutil from Intel and then chmodding and running the 64 bit version with the parameters -NIC=1 -DEFAULTCONFIG. I simply did this from within Ubuntu for minimal effort.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.