Ethernet controller not being detected

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
Preexo
Beiträge: 3
Registriert: 25.09.2013 11:41:56

Ethernet controller not being detected

Beitrag von Preexo » 25.09.2013 11:55:37

Hi,

ich habe einen neuen Server mit einem gigabyte ga-z87-d3hp board. Dieses hat einen Ethernet controller onboard.
Bei der Installation wurde dieser nicht erkannt. Deshalb habe ich vorerst eine andere Netzwerkkarte eingebaut, welche erkannt wurde. Nun würde ich die andere Netzwerkkarte gerne wieder loswerden und die onboard NIC nutzen.

Allerdings bekomme ich diese einfach nicht an den Start. Irgendwas mache ich falsch oder übersehe ich noch...

Folgende Schritte habe ich getan:
den Treiber geladen mit:
modprobe e1000e

das interface hinzugefügt in /etc/network/interfaces

Code: Alles auswählen

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp

auto eth1
allow-hotplug eth1
iface eth1 inet dhcp
und versucht das interface zu laden mit
ifup eth1
das brachte allerdings nur folgenden Fehler:

Code: Alles auswählen

Internet Systems Consortium DHCP Client 4.1.1-P1
Copyright 2004-2010 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

SIOCSIFADDR: No such device
eth1: ERROR while getting interface flags: No such device
eth1: ERROR while getting interface flags: No such device
Bind socket to interface: No such device
Failed to bring up eth1.
lspci-vvv liefert zu den beiden Ethernet Controllern

Code: Alles auswählen

00:19.0 Ethernet controller: Intel Corporation Device 153b (rev 04)
        Subsystem: Giga-byte Technology Device e000
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 0
        Interrupt: pin A routed to IRQ 5
        Region 0: Memory at f0a00000 (32-bit, non-prefetchable) [size=128K]
        Region 1: Memory at f0a3d000 (32-bit, non-prefetchable) [size=4K]
        Region 2: I/O ports at f080 [size=32]
        Capabilities: [c8] Power Management version 2
                Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
                Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=1 PME-
        Capabilities: [d0] MSI: Enable- Count=1/1 Maskable- 64bit+
                Address: 0000000000000000  Data: 0000
        Capabilities: [e0] PCI Advanced Features
                AFCap: TP+ FLR+
                AFCtrl: FLR-
                AFStatus: TP-

04:01.0 Ethernet controller: Intel Corporation 82541PI Gigabit Ethernet Controller (rev 05)
        Subsystem: Intel Corporation PRO/1000 GT Desktop Adapter
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 32 (63750ns min), Cache Line Size: 64 bytes
        Interrupt: pin A routed to IRQ 16
        Region 0: Memory at f0940000 (32-bit, non-prefetchable) [size=128K]
        Region 1: Memory at f0920000 (32-bit, non-prefetchable) [size=128K]
        Region 2: I/O ports at e000 [size=64]
        Expansion ROM at f0900000 [disabled] [size=128K]
        Capabilities: [dc] Power Management version 2
                Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
                Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=1 PME-
        Capabilities: [e4] PCI-X non-bridge device
                Command: DPERE- ERO+ RBC=512 OST=1
                Status: Dev=00:00.0 64bit- 133MHz- SCD- USC- DC=simple DMMRBC=2048 DMOST=1 DMCRS=8 RSCEM- 266MHz- 533MHz-
        Kernel driver in use: e1000
modinfo e1000e liefert

Code: Alles auswählen

filename:       /lib/modules/2.6.32-5-amd64/kernel/drivers/net/e1000e/e1000e.ko
version:        1.2.20-k2
license:        GPL
description:    Intel(R) PRO/1000 Network Driver
author:         Intel Corporation, <linux.nics@intel.com>
srcversion:     AB58ACECA1618E521F58503
alias:          pci:v00008086d00001503sv*sd*bc*sc*i*
alias:          pci:v00008086d00001502sv*sd*bc*sc*i*
alias:          pci:v00008086d000010F0sv*sd*bc*sc*i*
alias:          pci:v00008086d000010EFsv*sd*bc*sc*i*
alias:          pci:v00008086d000010EBsv*sd*bc*sc*i*
alias:          pci:v00008086d000010EAsv*sd*bc*sc*i*
alias:          pci:v00008086d00001525sv*sd*bc*sc*i*
alias:          pci:v00008086d000010DFsv*sd*bc*sc*i*
alias:          pci:v00008086d000010DEsv*sd*bc*sc*i*
alias:          pci:v00008086d000010CEsv*sd*bc*sc*i*
alias:          pci:v00008086d000010CDsv*sd*bc*sc*i*
alias:          pci:v00008086d000010CCsv*sd*bc*sc*i*
alias:          pci:v00008086d000010CBsv*sd*bc*sc*i*
alias:          pci:v00008086d000010F5sv*sd*bc*sc*i*
alias:          pci:v00008086d000010BFsv*sd*bc*sc*i*
alias:          pci:v00008086d000010E5sv*sd*bc*sc*i*
alias:          pci:v00008086d0000294Csv*sd*bc*sc*i*
alias:          pci:v00008086d000010BDsv*sd*bc*sc*i*
alias:          pci:v00008086d000010C3sv*sd*bc*sc*i*
alias:          pci:v00008086d000010C2sv*sd*bc*sc*i*
alias:          pci:v00008086d000010C0sv*sd*bc*sc*i*
alias:          pci:v00008086d00001501sv*sd*bc*sc*i*
alias:          pci:v00008086d00001049sv*sd*bc*sc*i*
alias:          pci:v00008086d0000104Dsv*sd*bc*sc*i*
alias:          pci:v00008086d0000104Bsv*sd*bc*sc*i*
alias:          pci:v00008086d0000104Asv*sd*bc*sc*i*
alias:          pci:v00008086d000010C4sv*sd*bc*sc*i*
alias:          pci:v00008086d000010C5sv*sd*bc*sc*i*
alias:          pci:v00008086d0000104Csv*sd*bc*sc*i*
alias:          pci:v00008086d000010BBsv*sd*bc*sc*i*
alias:          pci:v00008086d00001098sv*sd*bc*sc*i*
alias:          pci:v00008086d000010BAsv*sd*bc*sc*i*
alias:          pci:v00008086d00001096sv*sd*bc*sc*i*
alias:          pci:v00008086d0000150Csv*sd*bc*sc*i*
alias:          pci:v00008086d000010F6sv*sd*bc*sc*i*
alias:          pci:v00008086d000010D3sv*sd*bc*sc*i*
alias:          pci:v00008086d0000109Asv*sd*bc*sc*i*
alias:          pci:v00008086d0000108Csv*sd*bc*sc*i*
alias:          pci:v00008086d0000108Bsv*sd*bc*sc*i*
alias:          pci:v00008086d0000107Fsv*sd*bc*sc*i*
alias:          pci:v00008086d0000107Esv*sd*bc*sc*i*
alias:          pci:v00008086d0000107Dsv*sd*bc*sc*i*
alias:          pci:v00008086d000010B9sv*sd*bc*sc*i*
alias:          pci:v00008086d000010D5sv*sd*bc*sc*i*
alias:          pci:v00008086d000010DAsv*sd*bc*sc*i*
alias:          pci:v00008086d000010D9sv*sd*bc*sc*i*
alias:          pci:v00008086d00001060sv*sd*bc*sc*i*
alias:          pci:v00008086d000010A5sv*sd*bc*sc*i*
alias:          pci:v00008086d000010BCsv*sd*bc*sc*i*
alias:          pci:v00008086d000010A4sv*sd*bc*sc*i*
alias:          pci:v00008086d0000105Fsv*sd*bc*sc*i*
alias:          pci:v00008086d0000105Esv*sd*bc*sc*i*
depends:
vermagic:       2.6.32-5-amd64 SMP mod_unload modversions
parm:           copybreak:Maximum size of packet that is copied to a new buffer on receive (uint)
parm:           TxIntDelay:Transmit Interrupt Delay (array of int)
parm:           TxAbsIntDelay:Transmit Absolute Interrupt Delay (array of int)
parm:           RxIntDelay:Receive Interrupt Delay (array of int)
parm:           RxAbsIntDelay:Receive Absolute Interrupt Delay (array of int)
parm:           InterruptThrottleRate:Interrupt Throttling Rate (array of int)
parm:           IntMode:Interrupt Mode (array of int)
parm:           SmartPowerDownEnable:Enable PHY smart power down (array of int)
parm:           KumeranLockLoss:Enable Kumeran lock loss workaround (array of int)
parm:           WriteProtectNVM:Write-protect NVM [WARNING: disabling this can lead to corrupted NVM] (array of int)
parm:           CrcStripping:Enable CRC Stripping, disable if your BMC needs the CRC (array of int)
was mache ich falsch, wo übersehe ich etwas?
vielen Dank für jegliche Hilfe!

EDIT:
dmesg | grep eth liefert folgendes, ich sehe hier aber nur die zweite Netzwerkkarte, welche ich nachträglich eingebaut habe, nachdem es mit der ersten nicht funktionieren sollte.

Code: Alles auswählen

[    1.597569] e1000: eth0: e1000_probe: Intel(R) PRO/1000 Network Connection
[   14.538651] ADDRCONF(NETDEV_UP): eth0: link is not ready
[   14.565975] e1000: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX
[   14.566923] ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[   24.788630] eth0: no IPv6 routers present

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Ethernet controller not being detected

Beitrag von rendegast » 25.09.2013 13:15:21

Code: Alles auswählen

$ ls -1 /lib/modules/
3.10-0.bpo.2-amd64
3.10-2-amd64
3.10-3-amd64
3.2.0-4-amd64

$ egrep -i "8086.*153b" /lib/modules/*/modules.alias 
/lib/modules/3.10-0.bpo.2-amd64/modules.alias:alias pci:v00008086d0000153Bsv*sd*bc*sc*i* e1000e
/lib/modules/3.10-2-amd64/modules.alias:alias pci:v00008086d0000153Bsv*sd*bc*sc*i* e1000e
/lib/modules/3.10-3-amd64/modules.alias:alias pci:v00008086d0000153Bsv*sd*bc*sc*i* e1000e
-> den backports-kernel 3.10 installieren.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Preexo
Beiträge: 3
Registriert: 25.09.2013 11:41:56

Re: Ethernet controller not being detected

Beitrag von Preexo » 25.09.2013 14:39:14

vielen Dank für deine Antwort! Leider fehlt mir jetzt offensichtlich einiges an Verständnis.
Ich versuche es mal mit ein paar Rückfragen:

Wie kommst du auf "8086.*153b"?
153b erschließt sich mit ja noch über die Bezeichnung der Ethernet Karte... aber 8086 fällt für mich grade vom Himmel.

Könnte ich nicht im aktuellen Kernel (modules.alias) einen Alias hinzufügen können, welcher dann dafür sorgt das der Treiber zu der Karte passt?
Leider verstehe ich nicht genau wie diese module alias genau funktionieren :(

Ich würde gerne den Server noch einmal neu ausetzen, ohne zweite Netzwerkkarte und während der Installation den Treiber manuell auf die Karte münzen, müsste doch eigentlich gehen, oder? Zumindest hätte ich dann nicht die Möglichkeit den backport-kernel herunterzuladen...

Code: Alles auswählen

$ ls -1 /lib/modules/
2.6.32-5-amd64
Hoffe was ich da frage ist überhaupt möglich, vielen Dank nochmal - auch wenn ich deine sichtbar einfache Lösung den Kernel nachzuinstallieren erstmal nach hinten schieben würde um die Möglichkeit zu haben beim nächsten Server mit dem selben Board einfach während der Installation eine Lösung zu finden ohne jedes mal eine Netzwerkkarte nachbauen zu müssen...

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Ethernet controller not being detected

Beitrag von rendegast » 25.09.2013 16:08:08

Wie kommst du auf "8086.*153b"?
"intel" -> pci.ids -> 8086
Oder wennn ich mache

Code: Alles auswählen

[cat modules.alias | modprobe -c] | grep -i 153b
scheint mir die 8086 am sinnvollsten.
Könnte ich nicht im aktuellen Kernel (modules.alias) einen Alias hinzufügen können, welcher dann dafür sorgt das der Treiber zu der Karte passt?
Hatte ich auch mal gedacht.
Führt aber nur dazu, daß der Treiber automatisch durch udev geladen wird.
Eventuell im kompilierten Modul per Hex-Editor einen ID-Code durch den der Karte ersetzen,
aber das wäre frickeln.
Ich würde gerne den Server noch einmal neu ausetzen, ohne zweite Netzwerkkarte und während der Installation den Treiber manuell auf die Karte münzen, müsste doch eigentlich gehen, oder?
Zumindest hätte ich dann nicht die Möglichkeit den backport-kernel herunterzuladen...
Unnötig.
Eine kompatible Karte einstecken, um dann die zum Installer inkompatible aus dem installierten System heraus zugänglich zu machen ist/war gängige Praxis.

auch wenn ich deine sichtbar einfache Lösung den Kernel nachzuinstallieren erstmal nach hinten schieben würde um die Möglichkeit zu haben beim nächsten Server mit dem selben Board einfach während der Installation eine Lösung zu finden ohne jedes mal eine Netzwerkkarte nachbauen zu müssen...
Erledigt sich von selbst,
die nächste Installation wäre mit einer wheezy-netinst. ;)
Nebenbei sind Installationen selten,
das (32bit-)System hier existiert seit sarge (2005).
(Okay, ich war damals in Sachen linux nicht mehr ganz unerfahren.)
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Preexo
Beiträge: 3
Registriert: 25.09.2013 11:41:56

Re: Ethernet controller not being detected

Beitrag von Preexo » 25.09.2013 17:56:19

vielen Dank für deine Hilfe, ich habe in der Zwischenzeit noch etwas anderes ausprobiert: die aktuellste Version des treibers neu kompilieren und laden - siehe da alles funktioniert auf anhieb...

das man die alte version des moduls nicht so biegen kann das sie mit dem adapter läuft wundert mich allerdings... also ohne im hexeditor zu frickeln meine ich...

naja, vielen dank auf jeden fall - ich habe nun ein viel größeres verständnis von den zusammenhängen!

Antworten