Aktivieren Sie monitoring-Modus für RTL8188CUS über USB auf Raspbian

Ich versuche zu aktivieren, monitoring-Modus für USB-wifi-dongle mit dem RTL8188CUS Chipsatz auf einem raspberry pi model b+ (oder jeder raspberry pi, für diese Angelegenheit).

$ lsusb
Bus 001 Device 005: ID 0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN Adapter
$ sudo iwconfig wlan0 mode monitor
Error for wireless request "Set Mode" (8B06) :
    SET failed on device wlan0 ; Invalid argument.

Laut github/raspberrypi/linux/Themen/369, müssen Sie die rtlwifi/rtl8192cu kernel-Modul, das mit der kernel-distribution, aber nicht kompiliert. Dies erfordert kleinere änderungen an einigen Dateien als diff ' ed weiter unten unter 'SCHRITT 2'.

Dem USB-Problem erwähnt in diesem thread gelöst wurde als von 4.1.6+, so dass die rtlwifi-Treiber sollte funktionieren.

Schritte zum erstellen eines neuen raspberry pi (Modell B+)...

SCHRITT 0: Update bestehender Module und den kernel auf die neueste

$ sudo apt-get update
$ sudo rpi-update
$ uname -a
Linux raspberrypi 4.1.7+ #815 PREEMPT Thu Sep 17 17:59:24 BST 2015 armv6l GNU/Linux

SCHRITT 1: Holen Sie sich die raspbian-kernel-source, und fügen Sie die fehlenden Abhängigkeiten

$ git clone --depth=1 https://github.com/raspberrypi/linux
$ sudo apt-get install bc lshw

SCHRITT 2: Aktivieren Sie die rtlwifi (kernel -) Treiber für RTL8188CUS (RTL8192)

edit linux/drivers/net/wireless/Kconfig
-#source "drivers/net/wireless/rtlwifi/Kconfig"
-source "drivers/net/wireless/rtl8192cu/Kconfig"
+source "drivers/net/wireless/rtlwifi/Kconfig"
+#source "drivers/net/wireless/rtl8192cu/Kconfig"

(Wheezy) edit linux/drivers/net/wireless/Makefile
-#obj-$(CONFIG_RTLWIFI)         += rtlwifi/
+obj-$(CONFIG_RTLWIFI)          += rtlwifi/

(Jessie) edit linux/drivers/net/wireless/realtek/Makefile
-#obj-$(CONFIG_RTLWIFI)         += rtlwifi/
+obj-$(CONFIG_RTLWIFI)          += rtlwifi/

SCHRITT 3: Kompilieren und installieren des Kernels (nach vielen Stunden)

Zusammengefasst von kernel-Gebäude-Dokumentation .

$ cd linux
$ KERNEL=kernel
$ make bcmrpi_defconfig

$ make zImage modules dtbs
$ sudo make modules_install
$ sudo cp arch/arm/boot/dts/*.dtb /boot/
$ sudo cp arch/arm/boot/dts/overlays/*.dtb* /boot/overlays/
$ sudo cp arch/arm/boot/dts/overlays/README /boot/overlays/
$ sudo scripts/mkknlimg arch/arm/boot/zImage /boot/$KERNEL.img

SCHRITT 4: Neustart

$ sudo reboot

SCHRITT 5: Überprüfen Sie, dass die rtlwifi/rtl8192cu-Modul geladen wird

$ lsmod | fgrep rtl8192cu
rtl8192cu             100806  0 
rtl_usb                14781  1 rtl8192cu
rtl8192c_common        72091  1 rtl8192cu
rtlwifi               101122  3 rtl_usb,rtl8192c_common,rtl8192cu
mac80211              623281  3 rtl_usb,rtlwifi,rtl8192cu
$
$ lshw
  *-network:0
       description: Ethernet interface
       physical id: 1
       bus info: usb@1:1.3
       logical name: wlan0
       serial: 00:0b:81:94:e9:a3
       capabilities: ethernet physical
       configuration: broadcast=yes driver=rtl8192cu driverversion=4.1.7+ firmware=N/A link=no multicast=yes

SCHRITT 6: Versuchen Sie aktivieren die überwachung Modus

$ sudo iwconfig wlan0 mode monitor
Error for wireless request "Set Mode" (8B06) :
    SET failed on device wlan0 ; Operation not supported.

Hab ich was verpasst?
Frage 369 scheint zu zeigen, dass es funktionieren kann mit der rtlwifi Treiber?

Diese Frage könnte geeigneter sein, an der Super User oder Server Fehler StackExchanges, da es nicht direkt mit der Programmierung zusammenhängt.
Eine kleine Sache, die ich nur vergessen zu berücksichtigen, wenn ich versuchte dies: in der RaspPi 2, Schritt 3 ist anders (wie beschrieben in der build-Dokumentation weiter oben verlinkt).

InformationsquelleAutor Matt M | 2015-09-21

Schreibe einen Kommentar