Metainformationen zur Seite
Netzwerktreiber für kabelgebundenes Netzwerk kompilieren
Auf meinem Asus EeePC habe ich Sidux (ein Debian-Derivat, das versucht möglichst aktuelle Software zu verteilen) installiert. Leider ist jedoch der Treiber für die Netzwerkkarte nicht mit im Kernel.
Kein Problem, können wir selber kompilieren:
- Treiber von Atheros runterladen: AR813X-linux-v1.0.0.9.tar.gz
- (evtl. umbennenen) und entpacken, den GZIP-Fehler beim Entpacken ignorieren:
# mkdir /usr/src/atheros # mv \[459\]AR813X-linux-v1.0.0.9.tar.gz /usr/src/atheros/AR813X-linux-v1.0.0.9.tar.gz # cd /usr/src/atheros # tar xvfz AR813X-linux-v1.0.0.9.tar.gz atl1e.7 at_osdep.h copying ldistrib.txt readme release_note.txt src/ src/atl1c.h src/atl1c_ethtool.c src/atl1c_hw.c src/atl1c_hw.h src/atl1c_main.c src/atl1c_param.c src/atl1e.h src/atl1e_ethtool.c src/atl1e_hw.c src/atl1e_hw.h src/atl1e_main.c src/atl1e_param.c src/at_common.h src/at_common_main.c src/at_osdep.h src/kcompat.c src/kcompat.h gzip: stdin: decompression OK, trailing garbage ignored src/kcompat_ethtool.c src/Makefile src/Module.symvers src/modules.order tar: Child returned status 2 tar: Exiting with failure status due to previous errors
- ACHTUNG: Soll das Modul für 2.6.30-XX gebaut werden muss die Datei src/kcompat.h muss wie folgt geändert werden:
ab Zeile 206, alt: #ifndef IRQ_HANDLED #define irqreturn_t void #define IRQ_HANDLED #define IRQ_NONE #endif muss geändert werden in: #ifndef IRQ_HANDLED #define irqreturn_t void #define IRQ_HANDLED 1 #define IRQ_NONE 0 #endif
- jetzt das Modul bauen:
cd src make ... make install
- und noch in /etc/modules einbauen:
echo "atl1e" >> /etc/modules
- Nach einem Reboot oder manuellen Laden des Moduls (modprobe atl1e) steht das Device eth0 zur Verfügung
- Möglicherweise muss man den Treiber atl1c blacklisten, diesen wurde bei mir nämlich manchmal fehlerhafterweise geladen. Dazu einfach:
echo "blacklist atl1c" >> /etc/modprobe.d/blacklist.conf
Diskussion