Hallo!
Ich komme einfach nicht drauf: Ich benötige das Kernel Module sk98lin für einen Marvell Gigabit Ethernetadapter. Manuelles Laden mit modprobe sk98lin, ifconfig <bla>, route <bla> und schon läuft's. Jetzt hätte ich das Modul gern schon beim Starten geladen und die ifconfig und route Aufrufe in irgendwelche Startskripte verpackt (welche sind Fedora-like?). Ich habe versucht sk98lin in modprobe.conf bzw. modprobe.conf.dist und modules.conf mit alias eth0 sk98lin einzutragen, aber das Modul wird trotzdem nicht geladen. Ich erhalte auch keine Fehlermeldungen, so dass ich annehmen muss, dass gar nicht versucht wird, das Modul zu laden. Wo gehören die verschiedenen Aufrufe hin?
Vielen Dank! Stefan
Jetzt hätte ich das Modul gern schon beim Starten geladen und die ifconfig und route Aufrufe in irgendwelche Startskripte verpackt (welche sind Fedora-like?).
Die Netzwerkskripte liegen unter /etc/sysconfig/network-scripts. Dort gibt es Konfigurationsscripte (Name ifcfg-*).
Oder wenn es auch klickibunti sein darf, gucke dir mal die GNOME System Tools (gnome-system-*) an. Da gibt es eines, welches die Einstellungen für Netzwerkkarten vornimmt.
Gruß,
Jan
Hallo!
Am 14 Apr 2005 um 12:52 hat Jan Schaefer geschrieben:
Die Netzwerkskripte liegen unter /etc/sysconfig/network-scripts. Dort gibt es Konfigurationsscripte (Name ifcfg-*).
Aja, vielen Dank, die werde ich mir mal angucken!
Oder wenn es auch klickibunti sein darf, gucke dir mal die GNOME System Tools (gnome-system-*) an. Da gibt es eines, welches die Einstellungen für Netzwerkkarten vornimmt.
Ja, wenn ein entsprechendes Kernelmodul geladen ist kann man hier die entsprechende Schnittstelle konfigurieren. Immerhin konnte ich hier auch schon mal die DNS-Server eintragen und die /etc/hosts bearbeiten. Leider gelingt es mir aber immer noch nicht, dass das Kernelmodul "sk98lin" beim Start automatisch geladen wird. Wie schon beschrieben funktioniert das manuelle Laden und Konfigurieren ohne Probleme. Ich habe wohl einfach immer noch nicht die richtige Stelle gefunden, an der man das Modul für das automatischen Laden eintragen muss...
Vielen Dank. Gruß, Stefan
Am Donnerstag, den 14.04.2005, 20:14 +0200 schrieb Stefan Mahrhold:
Leider gelingt es mir aber immer noch nicht, dass das Kernelmodul "sk98lin" beim Start automatisch geladen wird. Wie schon beschrieben funktioniert das manuelle Laden und Konfigurieren ohne Probleme. Ich habe wohl einfach immer noch nicht die richtige Stelle gefunden, an der man das Modul für das automatischen Laden eintragen muss...
Ein Quickfix wäre sicherlich, das in /etc/rc.local zu schreiben, aber da das erst am ganz am Ende des Bootprozesses abgearbeitet wird, ist danach wohl noch ein "ifdown eth0 ; ifup" eth0 oder gar ein "/etc/init.d/networking restart" fällig, damit die Karte läuft.
Also muß man das Modul laden, bevor das interface aktiviert wird. In /sbin/ifup sind mehrere Mechanismen vorgesehen, siehe Zeile 143 ff
if [ -x /sbin/ifup-pre-local ]; then /sbin/ifup-pre-local ${CONFIG} $2 fi
OTHERSCRIPT="/etc/sysconfig/network-scripts/ifup-${DEVICETYPE}"
if [ -x ${OTHERSCRIPT} ]; then exec ${OTHERSCRIPT} ${CONFIG} $2 fi
Also: echo "modprobe sk98lin" > /sbin/ifup-pre-local
Oder: Ein /etc/sysconfig/network-scripts/ifup-ethernet erstellen, das speziell bei eth0 als device das passende modul lädt. Das wäre die sauberste Lösung, da es in /etc liegt. Mehr dazu in /usr/share/doc/initscripts-*/sysconfig.txt
Christoph
Hallo Stefan,
Stefan Mahrhold wrote:
Hallo!
Am 14 Apr 2005 um 12:52 hat Jan Schaefer geschrieben:
Die Netzwerkskripte liegen unter /etc/sysconfig/network-scripts. Dort gibt es Konfigurationsscripte (Name ifcfg-*).
Leider gelingt es mir aber immer noch nicht, dass das Kernelmodul "sk98lin" beim Start automatisch geladen wird. Wie schon beschrieben funktioniert das manuelle Laden und Konfigurieren ohne Probleme. Ich habe wohl einfach immer noch nicht die richtige Stelle gefunden, an der man das Modul für das automatischen Laden eintragen muss...
Du schreibst leider nicht, wo Du das Modul her hast. Ich nehme an, dass es im Source vorliegt und per make entstanden ist. Nachdem Du das sk98lin compiliert hast, muss dieses in den Modulzweig des aktiven Kernel kopiert werden. Fuer einen 2.4 Kernel (war doch bei FC1 so?) ist das dann:
cp sk98lin.o /lib/modules/`uname -r`/kernel/drivers/net/
Nun ist noch unbedingt ein "depmod -a" notwendig. Damit werden in /lib/modules/`uname -r`/ die modules.* Dateien aktualisiert. Jetzt sollte mit einem "grep sk98lin modules.*" wenigstens eine Zeile gelistet werden, die sk98lin.o enthaelt. Nun einen Eintrag in der modules.conf fuer das gewuenschte Interface erstellen: alias eth0 sk98lin
Notwendig ist nun noch einen Configdatei fuer das Netzwerkinterface: /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 BOOTPROTO=static IPADDR=192.168.1.25 NETMASK=255.255.255.0 ONBOOT=yes TYPE=Ethernet
Das ist das absolute Minimum, dass in der ifcfg-eth0 stehen muss. Sonst kannst Du dass aber auch mit redhat-config-network machen, wobei dann eventuell noch weitere Parameter in der Configdatei stehen.
ifup/ifdown eth0 sollte dann klappen.
Alle anderen Vorschlaege, wo man "modprobe sk98lin" in Dateien beim Systemstart eintragen soll, sind schlichtweg unsauber Loesungen und so bei FC nicht vorgesehen oder notwendig. Es kann Dir sonst passieren, dass ein RPM-Update diese Eintraege wieder ueberschreibt.
Ich vermute aber, dass bei Dir einfach nur ein "depmod -a" fehlt.
Wenn Du danach immer noch Probleme haben solltest, dann muss etwas mit dem Kernelmodul faul sein. Vielleicht gibst Du mal den Link zu dem Teil bekannt.
Vielen Dank. Gruß, Stefan
Gruss Uwe
Hallo!
So, jetzt finde ich Zeit zum Antworten... ;-)
Am 15 Apr 2005 um 1:59 hat Uwe Beck geschrieben:
Du schreibst leider nicht, wo Du das Modul her hast. Ich nehme an, dass es im Source vorliegt und per make entstanden ist.
Es stammt von einer CD, die dem Mainboard beilag (Gigabyte). Im Prinzip liegt das Modul wohl wirklich im Quellcode vor, wird aber scriptgesteuert übersetzt (und wohl auch installiert, s. unten).
Nachdem Du das sk98lin compiliert hast, muss dieses in den Modulzweig des aktiven Kernel kopiert werden. Fuer einen 2.4 Kernel (war doch bei FC1 so?) ist das dann:
cp sk98lin.o /lib/modules/`uname -r`/kernel/drivers/net/
Dort wurde es vom Script (s. oben) schon hinkopiert.
Nun ist noch unbedingt ein "depmod -a" notwendig. Damit werden in /lib/modules/`uname -r`/ die modules.* Dateien aktualisiert. Jetzt sollte mit einem "grep sk98lin modules.*" wenigstens eine Zeile gelistet werden, die sk98lin.o enthaelt. Nun einen Eintrag in der modules.conf fuer das gewuenschte Interface erstellen: alias eth0 sk98lin
Ja, so habe ich es probiert. Leider wurde das Modul auch so nicht geladen und zwar nach wie vor ohne Fehlermeldungen...
Wenn Du danach immer noch Probleme haben solltest, dann muss etwas mit dem Kernelmodul faul sein. Vielleicht gibst Du mal den Link zu dem Teil bekannt.
Ich habe mir jetzt einfach eine neuere Version des Treibers von www.syskonnect.com besorgt. Damit funktionierte die Installation in so fern gleich auf Anhieb, dass nach einem Neustart automatisch kudzu gestartet wurde, das mir dann angeboten hat, die neue Netzwerkkarte gleich zu konfigurieren. Seit dem läuft alles bestens. Ich frage mich nur, was mit der älteren Version los war, weil ich ja nicht einmal Fehlermeldungen erhalten habe.
Auf jeden Fall vielen Dank! Gruß, Stefan
Am So, den 17.04.2005 schrieb Stefan Mahrhold um 19:58:
Ich habe mir jetzt einfach eine neuere Version des Treibers von www.syskonnect.com besorgt. Damit funktionierte die Installation in so fern gleich auf Anhieb, dass nach einem Neustart automatisch kudzu gestartet wurde, das mir dann angeboten hat, die neue Netzwerkkarte gleich zu konfigurieren. Seit dem läuft alles bestens. Ich frage mich nur, was mit der älteren Version los war, weil ich ja nicht einmal Fehlermeldungen erhalten habe.
https://www.redhat.com/archives/fedora-test-list/2005-April/msg01321.html
Stefan
Alexander
Tach!
Am 17 Apr 2005 um 20:03 hat Alexander Dalloz geschrieben:
https://www.redhat.com/archives/fedora-test-list/2005-April/msg01321.h tml
Ah ja, interessant. Bezeichnet man diese Kernelmodule von Drittanbietern als "Patches"?
Gruß, Stefan
Am So, den 17.04.2005 schrieb Stefan Mahrhold um 20:59:
https://www.redhat.com/archives/fedora-test-list/2005-April/msg01321.h tml
Ah ja, interessant. Bezeichnet man diese Kernelmodule von Drittanbietern als "Patches"?
Stefan
http://de.wikipedia.org/wiki/Patch_%28Software%29
Wenn ich das so lese, könnte man von Patch reden, wenn das Kernelmodul das von der Distribution gelieferte ersetzt. In meinem Sprachgebrauch würde ich das nicht unbedingt Patch nennen, sondern nur dann, wenn ich mit einem Satz (oder auch einzelnen File) den bestehenden Sourcecode verändere, um dann auf Basis des veränderten Codes etwas zu kompilieren.
Alexander
de-users@lists.fedoraproject.org