Solution to “set failed… device or resource busy”

Problem:

Cannot change wlan network (device interface) settings (iwconfig) on the RaspberryPi or your Linux Computer / Notebook, because it yields one of these lock errors due to busy device or resource:

set failed on device wlan0;
set failed on device mon0;

failed: Device or resource busy

wlan0 device or resource busy

set ESSID: set failed on device

This occurs using various tools, like aircrack-ng and macchanger. Typically when your system is using ifplugd.

Solutions

Option 1 – configuring ifplugd (recommended solution)

Make a backup of /etc/default/ifplugd and change HOTPLUG_INTERFACES="all" to HOTPLUG_INTERFACES="".

– reboot. This solution is the most proper one I guess.
The ‘Device or resource busy‘ error gets fixed because the ifplugd service does not block the interface anymore.

Option 2 – try to stop ifplugd

The Raspbian Debian OS has a daemon watching your ethernet and wireless interfaces to auto-plug and configure them; this daemon makes the interface busy, even after executing ifdown wlan0. Stop it 🙂

 Option 3 – Stop-chain

If all this does not help, I found a rather strange fix by chaining the commands with a semicolon like this:

 

The problem occurs because ifplugd is blocking the device internally. The daemon is managing your devices.
It also happens with other device identifiers like mon0, wlan1, eth0, …

 

5 thoughts on “Solution to “set failed… device or resource busy”

  1. Pingback: Wi-Fi Tracker – Script | Everything Is Better With Bluetooth.

Leave a Reply

Your email address will not be published. Required fields are marked *