Adri's Blog

Ein privates Blog

WLAN mit Tenda W322U unter Linux

| Keine Kommentare

Seit kurzer Zeit nutze ich WLAN für mein Internet, da mein Tower keine WLAN Karte eingebaut hat so wie es bei meinem Laptop der Fall ist musste da also eine USB-Stick alternative her.
Dafür nutze ich den Tenda W322U, für diejenigen die nicht wissen welche ich meine gibts hier ein technische Beschreibung leider auf Englisch.

Der Stick läuft unter Windows wie gewohnt ohne Probleme, entweder man nutzt die mit gelieferten Treiber oder man nutzt die Windowstreiber, letzteres Funktioniert zumindest unter meinem Windows 7 ohne zu zicken und damit brauch ich auch keine zusätzliche Software für den Stick zu installieren, sehr schön. Wenn ich das ganze aber unter meinem Linuxsystem nutzen möchte bekomme ich da doch schon arge Probleme, der Stick geht nicht out-of-the-box man muss also etwas nachhelfen.


Nun was muss man tun damit der Stick überhaupt läuft unter Linux?

Zuallererst sollte man ein Terminal öffnen und folgendes dort eintippen

lsmod | grep rt

damit wird herausgefunden welchen Treiber von Ralink, das ist der Chip der auf dem Tender verbaut wurde, geladen worden ist.
Folgendes müsste euch der Befehl ausspucken:

rt2870sta 552712 0
rt2800usb 40800 0
rt2x00usb 13600 1 rt2800usb
rt2x00lib 34624 2 rt2800usb,rt2x00usb
led_class 5256 1 rt2x00lib
input_polldev 4720 1 rt2x00lib
mac80211 210104 2 rt2x00usb,rt2x00lib
cfg80211 109144 2 rt2x00lib,mac80211
crc_ccitt 2336 1 rt2800usb
parport_pc 37352 1
parport 40528 3 lp,ppdev,parport_pc

Die ersten vier Zeilen sind eigentlich das Ausschlag gebende was wir wissen müssen. Als nächstes geben wir noch folgenden Befehl ein.

dmesg | grep rt

Damit befragen wir den Kernel was passierte und was er uns Mitteilen möchte. Folgendes erhalte ich durch den Befehl:

[ 101.410539] usbcore: registered new interface driver rt2800usb
[ 101.928562] rt2870sta: module is from the staging directory, the quality is unknown, you have been warned.
[ 101.946048] rtusb init --->
[ 101.946104] usbcore: registered new interface driver rt2870
[ 102.426657] rt3070sta: module is from the staging directory, the quality is unknown, you have been warned.
[ 102.438747] rtusb init --->
[ 102.438756] Error: Driver 'rt2870' is already registered, aborting...

Ist nicht der ganze Log den mir die Konsole ausspuckt, wenn ich den ganzen zeigen würde sprengt es einfach das Blog, daher nur das wichtigste, in diesem Code ist ein anderer Treiber genannt, den rt20070sta, welcher von lsmod nicht genannt wurde. Nun haben wir die betroffenen Treiber gefunden, als nächstes müssen wir diese erst einmal aus dem System laden lassen, das geht wie folgt:

sudo modprobe -rf rt3070sta
sudo modprobe -rf rt2800usb
sudo modprobe -rf rt2870sta

Damit haben wir alle betroffenen Treiber entladen. Jetzt laden wir den Treiber den wir wirklich brauchen mit:

sudo modprobe rt2870sta

Nach einer kurzen Wartezeit sollte der Stick sich melden und man kann sich ins WLAN einklinken.
Nachdem wir uns versichern konnten, dass wir Verbindung mit dem WLAN haben sollten wir den Kernel dazu bringen die nciht benötigten Treiber nicht mehr automatisch laden zu lassen. Das erfolgt so:

echo blacklist rt2800usb | sudo tee -a /etc/modprobe.d/blacklist.conf
echo blacklist rt3070sta | sudo tee -a /etc/modprobe.d/blacklist.conf

Ab jetzt sollte das WLAN immer funktionieren, tut es zumindest bei mir. Hier noch ein Link zu dem Problem bei Ubuntuusers.de, welches von mir gestartet wurde.

Autor: Adrian

Hallo, mein Name ist Adrian. Windows- und Linux-User, Technik affiner Mensch mit faibel zu guten Videospielen. Ich blogge über Thematiken die mich besonders interessieren, welche meist aus der Windows-, Linux- und Android-Welt enstpringen, da mich diese Plattformen seit langem täglich begleiten.

Schreibe einen Kommentar

Pflichtfelder sind mit * markiert.