Solving the error: device or resource busy
When you execute the command iwconfig to change the channel or the mode like this:
iwconfig wlan0 mode monitor
You usually get this error:
Error for wireless request "Set Mode" (8B06) : SET failed on device wlan0 ; Device or resource busy
Or if you are using airodump-ng:
ioctl(SIOCSIWMODE) failed: Device or resource busy ARP linktype is set to 1 (Ethernet) - expected ARPHRD_IEEE80211, ARPHRD_IEEE80211_FULL or ARPHRD_IEEE80211_PRISM instead. Make sure RFMON is enabled: run 'airmon-ng start wlan0 <#>' Sysfs injection support was not found either.
Make sure you didn't start airodump-ng yet or check if you are connected to any wifi.
If you have the command airmon-ng, check which open process could interfere.
For example, if the output shows the following processes:
Found 5 processes that could cause trouble. If airodump-ng, aireplay-ng or airtun-ng stops working after a short period of time, you may want to run 'airmon-ng check kill' PID Name 332 avahi-daemon 343 avahi-daemon 392 wpa_supplicant 408 wpa_supplicant 539 dhcpcd
You need to review those processes
Stop ifplugd service
sudo service ifplugd stop ifconfig wlan0 down;
ifconfig wlan0 down iwconfig wlan0 mode monitor ifconfig wlan0 up
If you need to change the channel and still having issues, try to use airmon-ng:
sudo airmon-ng start wlan0 11
service wpa_supplicant stop
sudo systemctl mask wpa_supplicant.service
sudo update-rc.d dhcpcd disable
Reboot your computer or replug the usb device.