Netzwerkkarte fehlendes kernel Modul

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
Henk84
Beiträge: 198
Registriert: 29.05.2006 14:09:31

Netzwerkkarte fehlendes kernel Modul

Beitrag von Henk84 » 11.03.2008 15:14:39

Hallo,

ich brauche das Kernel-Modul e1000_ich9 für meine Netzwerkkarte. Leider kommt aber ein: "could not find module e1000_ich9" wenn ich das Modul laden will. Ich nehme mal sehr stark an, dass das heißt das es nicht auf dem System vorhanden ist ;-) Wie aber löse ich nun dieses Problem ohne mir einen Kernel selbst zu backen oder ähnliches?

Henk

Lumines
Beiträge: 63
Registriert: 07.11.2007 13:08:02

Beitrag von Lumines » 11.03.2008 15:18:11

heißt das modul nicht e1000?
also ohne dieses _ich9?

Benutzeravatar
a.b.
Beiträge: 190
Registriert: 28.11.2007 16:47:46
Kontaktdaten:

Beitrag von a.b. » 11.03.2008 15:31:30

Kernelversion? Was sagt

Code: Alles auswählen

ls -R /lib/modules/`uname -r` | grep e1000
?

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Beitrag von Spasswolf » 11.03.2008 15:38:19

Eleganter:

Code: Alles auswählen

find /lib/modules/`uname -r` -name "e1000*"
Noch eleganter:

Code: Alles auswählen

modprobe -l "e1000*"
Und ein lspci -nn wäre auch nicht schlecht

Henk84
Beiträge: 198
Registriert: 29.05.2006 14:09:31

Beitrag von Henk84 » 12.03.2008 09:17:32

Code: Alles auswählen

find /lib/modules/`uname -r` -name "e1000*"
sowie

Code: Alles auswählen

ls -R /lib/modules/`uname -r` | grep e1000
sagen ein "No such file or directory".

Wenn ich ein modprobe -l "e1000*" mache, dann kommt ein

Code: Alles auswählen

/lib/modules/2.6.18.8-xen/kernel/drivers/net/e1000/e1000.ko

Code: Alles auswählen

lspci -nn
gibt ein:

Code: Alles auswählen

00:19.0 Ethernet controller [0200]: Intel Corporation 82566DM-2 Gigabit Network Connection [8086:10bd] (rev 02)
Ich hoffe ihr köönt mir helfen, damit das Netz für den Rechner läuft :-)

Benutzeravatar
habakug
Moderator
Beiträge: 4314
Registriert: 23.10.2004 13:08:41
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von habakug » 12.03.2008 09:55:26

Hallo!

Du brauchst das Modul "e1000e":
modinfo e1000e hat geschrieben:version: 0.2.0
license: GPL
description: Intel(R) PRO/1000 Network Driver
author: Intel Corporation, <linux.nics@intel.com>
srcversion: 7FBC1ABD2A2E3068AB5D619
alias: pci:v00008086d000010BDsv*sd*bc*sc*i*
Ab 2.6.23 im Kernel. Kernel bauen wie im Wiki beschrieben oder einen alternativen Installer [1] benutzen.

Gruß, habakug

[1] http://mirror.home-dn.net/d-i/

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Beitrag von Spasswolf » 12.03.2008 09:55:38

Das Modul, was du brauchst ist das e1000e Modul was im neusten Kernel (2.6.24*) zu finden ist. Benutzt du den Xen Kernel für die dom0 oder für eine domU? Wenn du den Xen Kernel für ein Gastsystem benutzt, kannst du Kernel 2.6.24 benutzten, der hat die Xen Gast Unterstützung integriert. Wenn du den Kernel für die dom0 benutzt musst du das Modul extra kompilieren. Ich finde allerdings gerade keinen download der e1000e Modulquellen. Man könnte aber die Quellen aus dem 2.6.24er Kernel nehmen, und mit kleinen Änderungen am Makefile diese für einen anderen Kernel kompilieren, wobei es natürlich keine Garantie gibt, dass das Modul für Kernel 2.6.24 mit dem 2.6.18er funktioniert.

Henk84
Beiträge: 198
Registriert: 29.05.2006 14:09:31

Beitrag von Henk84 » 12.03.2008 10:05:43

Ich benutze den 18er Kernel für das Wirtssystem. Also muss ich das Modul wohl nachträglich bauen. Wie funzt das denn?

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Beitrag von Spasswolf » 12.03.2008 10:55:09

Du nimmst dir das Verzeichnis ./drivers/net/e1000e aus den 2.6.24er Quellen und änderst das Makefile so:

Code: Alles auswählen

#
# Makefile for the Intel(R) PRO/1000 ethernet driver
#

obj-m += e1000e.o

e1000e-objs := 82571.o ich8lan.o es2lan.o \
               lib.o phy.o param.o ethtool.o netdev.o
modules:
        make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules
clean:
        make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean
Dann kannst du das Modul extern kompilieren. Das wird mit deiner Kernelversion aber nicht funktionieren, da der Treiber mindestens eine Struktur braucht (napi_struct), die es erst in Kernel 2.6.24 gibt. Aber da es ja den Treiber auch schon für Kernel 2.6.23 gibt (siehe Link von habakug), ist es vermutlich möglich ein Backport zu erstellen. Als erstes solltest du dir vermutlich einen neueren dom0 Kernel besorgen (bei Gentoo gibt es 2.6.21), dann wird das portieren eventuell einfacher.

Edit: Du könntest auch einen dom0 Patch für 2.6.24 suchen.

Spasswolf
Beiträge: 3472
Registriert: 30.11.2005 10:32:22
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Wald

Beitrag von Spasswolf » 12.03.2008 11:33:37

Was du auch noch probieren könntest wäre die neuste Version des e1000 Treibers (7.6.15.4), die im Kernel enthaltenen Vesionen sind uralt.
http://sourceforge.net/project/showfile ... e_id=54835

Benutzeravatar
KBDCALLS
Moderator
Beiträge: 22454
Registriert: 24.12.2003 21:26:55
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Dortmund
Kontaktdaten:

Beitrag von KBDCALLS » 13.03.2008 11:31:44

verschoben
Was haben Windows und ein Uboot gemeinsam?
Kaum macht man ein Fenster auf, gehen die Probleme los.

EDV ist die Abkürzung für: Ende der Vernunft

Bevor du einen Beitrag postest:
  • Kennst du unsere Verhaltensregeln
  • Lange Codezeilen/Logs gehören nach NoPaste, in Deinen Beitrag dann der passende Link dazu.

Antworten