Bei NdisWrapper handelt es sich um ein Werkzeug, welches die Windowstreiber für WLAN-Karten nutzt, um diese unter Linux zum Laufen zu bringen. Bei einigen Chipsätzen kann man auf der Homepage des Herstellers spezielle Chipsatz-Treiber bekommen. Diese sind den mitgelieferten Windows-Treibern vorzuziehen. Ndiswrapper benötigt sowohl eine Treiberdatei mit der Endung .inf als auch alle dazugehörigen Dateien (z.B. mit der Endung .sys) in demselben Verzeichnis.
Bevor man mit der Installation von NdisWrapper beginnt, sollte man sich unbedingt die Anleitung zur WLAN-Installation durchlesen! Grundsätzlich sollte fast jede WLAN-Karte mit NdisWrapper lauffähig sein. Ist die eigene Karte hier nicht aufgeführt, sollte man es trotzdem zumindest probieren.
Bei den meisten Karten in dieser Liste ist auch der verwendete Chipsatz und eine Downloadquelle für den Treiber angegeben. Sollte dies nicht der Fall sein, kann man es immer noch mit den beiliegenden Windows-Treibern versuchen. Die entsprechenden Treiber müssen zunächst auf die Festplatte kopiert und evtl. entpackt werden. Bei Dateien von einer Treiber-CD müssen noch die Schreibrechte [6] für alle Benutzer gesetzt werden. Ansonsten kann ndiswrapper diese nicht in das System einbinden.
Wenn die Treiberpakete als exe-Datei vorliegen, müssen diese über ein Windowssystem, mit Hilfe eines der Programme [1]
oder mit Hilfe von Wine entpackt werden.
Wurde das Windows-Archiv mit wine entpackt, sind die Dateien in dem verborgenen Ordner $HOME/.wine/drive_c/Programme/Name_des_Treibers zu finden.
Zunächst müssen folgende Pakete installiert [1] werden:
ndiswrapper-utils-1.9 ()
ndisgtk (in main)
Ist am betroffenen PC keine Internetverbindung zum Herunterladen der ndiswrapper-Pakete vorhanden, können die Pakete von der Ubuntu Installations-CD verwendet werden. Die deb-Installationspakete befinden sich im Verzeichnis /pool/main/n und müssen nur nacheinander doppelt angeklickt werden. Siehe auch Paketinstallation DEB.
Für 32 bit-Systeme muss natürlich ein 32bit-Treiber, für 64 bit-Systeme ein entsprechender 64 bit-Windows-Treiber verwendet werden
Ab ubuntu 8.10 bis ubuntu 10.10 irritiert eine Fehlermeldung bei der Installation eines Treibers mit ndisgtk. "Es kann nicht geprüft werden ob die Hardware vorhanden ist ...". Die Netzwerkkonfiguration kann ebenfalls nicht gestartet werden "Could not find a network configuration tool.". Dafür gibt es einen Patch. Der Paketbetreuer ist bereits informiert. Die Fehlermeldung kann ansonsten ignoriert werden.
Nach der Installation der Pakete klickt man unter "System -> Systemverwaltung -> Windows WLAN Treiber" auf "Neuen Treiber installieren". Nach der Auswahl der entsprechenden inf-Datei des Windowstreibers sollte der Treiber in der Liste auftauchen und darunter auch "Hardware verfügbar: Ja" stehen.
Sollte die inf-Datei nicht gefunden werden hilft es, den Treiber auf ein externes Medium zu entpacken z.B. USB Stick. Dann erneut "System -> Systemverwaltung -> Windows WLAN Treiber" aufrufen und bei Laufwerk USB Stick wählen hier die entsprechende inf Datei wählen.
Hat es dennoch nicht geklappt, kann es mitunter helfen ndisgkt manuell als Root per
gksu ndisgtk
zu starten.
ndisgtk findet den Windows-Treiber nicht wenn sich im Pfad Ordnernamen mit Leerzeichen befinden.
Manchmal funktioniert der Weg über ndisgtk nicht. Man kann aber ohne weiteres auf das Terminal [3] ausweichen:
sudo ndiswrapper -i /Pfad_zum_Windowstreiber/Dateiname.inf
Man sollte jetzt mal einen Blick in /etc/ndiswrapper/ werfen. Dort sollte nun ein neuer Ordner erscheinen, der den Namen der bei der Installation verwendeten *.inf Datei trägt und die Treiber- und Firmwaredateien sowie die durch Ndiswrapper angelegten Konfigurationsdateien enthält.
Mit folgendem Befehl lässt man sich den Status des Treibers anzeigen.
ndiswrapper -l
Die Ausgabe sollte etwa so aussehen:
Treibername driver present, hardware present
Jetzt kann man das Modul ndiswrapper laden [5].
sudo modprobe ndiswrapper
Die Karte sollte jetzt funktionieren und kann benutzt werden.
Damit das Modul beim Systemstart oder beim Hinzufügen der Hardware automatisch geladen wird, gibt man
sudo ndiswrapper -ma
ein, was eine Aliastabelle für die verwendeten Geräte-ID anlegt.
Zur Kontrolle und Fehlersuche bei Problemen:
cat /etc/modprobe.d/ndiswrapper dmesg | egrep 'ndis|wlan'
Typische Fehler:
falsche Treiberversion. Es wurde unter einem 64bit Systemkern ein 32bit Windows-Treiber installiert, oder umgekehrt.
Initialisierungsfehler „22“. Dieses Problem tritt bei bestimmten 32bit und 64bit Windows Gerätetreibern auf.
ndiswrapper: probe of 0000:00:08.0 failed with error -22
Abhilfe schafft eine manuelle Installation von Ndiswrapper Version 1.57. Anleitung weiter unten im Artikel. Alternativ kann ein Initialisierungsskript verwendet werden.
Diverse Meldungen „unknown symbol“. Verwendete Treiberversion ist nicht für Ndiswrapper geeignet. Ndiswrapper kann einige Eigenschaften des Windows-Treibers nicht implementieren. Die Geräteinitialisierung scheitert oder es funktioniert einfach nicht.
Beispiel:
ndiswrapper (import:233): unknown symbol: NDIS.SYS:'NdisAllocateNetBufferAndNetBufferList' ndiswrapper (import:233): unknown symbol: NDIS.SYS:'NdisMIndicateReceiveNetBufferLists' ...
Ndiswrapper startet u.U. nicht automatisch bei Systemstart. Ab Ubuntu 11.10 wird die benötigte Konfigurationsdatei nicht mehr im entsprechenden Ordner angelegt, kann aber einfach manuell kopiert werden. Dann wird die WLAN-Karte oder der WLAN-Stick auch bei Systemstart direkt erkannt.
sudo cp /etc/modules.conf /etc/modprobe.d/ndiswrapper.conf
Installiert man über Ndiswrapper einen neuen Treiber, ist es eventuell vonnöten den alten zu deinstallieren. Zuerst findet man mittels
sudo ndiswrapper -l
den Namen des installierten Treibers heraus. Das Entfernen des Treibers geschieht schließlich mit
sudo ndiswrapper -r namedestreibers
Fehlerhafte Treiber, unvollständige Installationen oder leere Installationsverzeichnisse unter /etc/ndiswrapper und /etc/modprobe.d/ndiswrapper müssen ggf. gelöscht werden.
Wenn der Treiber erfolgreich geladen wurde, kann an dieser Stelle auf der Übersichtsseite mit der Konfiguration fortgefahren werden.
Damit das Unterfangen gelingt, benötigt man die folgenden Pakete [1]:
linux-headers-generic
build-essential
Im Terminal [3]:
sudo apt-get install --reinstall linux-headers-$(uname -r) linux-headers-generic build-essential
Vorhandene Ndiswrapper-Version deinstallieren:
sudo apt-get remove --purge ndiswrapper-common ndiswrapper-utils-1.9 sudo rm /lib/modules/$(uname -r)/kernel/ubuntu/ndiswrapper/ndiswrapper.ko
Zunächst wird die aktuelle Version bei Sourceforge
heruntergeladen.
wget http://downloads.sourceforge.net/project/ndiswrapper/stable/1.57/ndiswrapper-1.57.tar.gz
Nachdem man in das Verzeichnis gewechselt ist, in dem das heruntergeladen Archiv ist, entpackt man es mit
tar -xvf ndiswrapper-1.57.tar.gz
und wechselt mittels
cd ndiswrapper-1.57
in das Verzeichnis der entpackten Dateien.
Module bauen und in das System einbinden:
make sudo make install sudo depmod -a sudo update-initramfs -u
Prüfen:
modinfo ndiswrapper
Version 1.57 muss angezeigt werden. Ist alles fehlerfrei abgelaufen, kann der Gerätetreiber wie oben beschrieben über Terminal [3] installiert werden. Das grafische Tool ndisgtk zu Ndiswrapper darf in diesem Fall nicht aus den offiziellen Paketquellen installiert werden, kann aber nun ebenfalls manuell gebaut und installiert werden. Anleitung dazu im Forum.
Nach einem Kernel-Upgrade muss Ndiswrapper für die nun verwendete Kernelversion neu gebaut und installiert werden.
cd ndiswrapper-1.57 make clean make sudo make install sudo depmod -a sudo update-initramfs -u
Ndiswrapper Homepage
- mit Wiki und FAQ
Ndiswrapper Kartenliste
- Karten, die bereits mit Ndiswrapper laufen
WLAN mit WPA
- Mini HowTo für die Einrichtung von Ndiswrapper und wpasupplicant für WLAN mit WPA unter Ubuntu
Diese Revision wurde am 29. Januar 2012 um 09:50 Uhr
von elektronenblitz63 erstellt.
Dieser Seite wurden folgende Begriffe zugeordnet:
Hardware, Netzwerk, WLAN
2004 – 2011 ubuntuusers.de • Einige Rechte vorbehalten