无法认领 USB 接口(设备或资源忙)

Posted

技术标签:

【中文标题】无法认领 USB 接口(设备或资源忙)【英文标题】:Unable to claim USB interface (Device or resource busy) 【发布时间】:2015-06-30 06:56:45 【问题描述】:

我想在 Ubuntu 14 smarty 中使用我的 ACR122U 非接触式智能卡读卡器。所以我安装了我需要的包和驱动程序。

最后,当我想使用阅读器时,我收到以下错误:

rc@rc-System-Product-Name:~/Desktop/itsme$ sudo nfc-list
[sudo] password for rc: 
nfc-list uses libnfc 1.7.0
error   libnfc.driver.acr122_usb    Unable to claim USB interface (Device or resource busy)
nfc-list: ERROR: Unable to open NFC device: acr122_usb:001:020
rc@rc-System-Product-Name:~/Desktop/itsme$ 
rc@rc-System-Product-Name:~/Desktop/itsme$ sudo mfoc -O output.txt
error   libnfc.driver.acr122_usb    Unable to claim USB interface (Device or resource busy)
No NFC device found.
rc@rc-System-Product-Name:~/Desktop/itsme$ 

看来我的阅读器正在使用内核工具。我搜索了很多。已经有很多人有同样的问题,但我在他们中找不到我的答案。

有人知道我该如何解决这个问题吗? (例如,通过回收设备)

【问题讨论】:

如果您的系统上正在运行 PC/SC 守护程序,它将访问阅读器。因此,您可能想尝试停止该守护进程。 嗨哈米德,如果我在下面的回答是正确的,请将其标记为已接受。 【参考方案1】:

如果你的内核版本>3.5,nfs-listpcscd会因为pn533驱动自动加载而报这个错误。

要读取pcscd dameon 输出,您可以使用以下命令运行它:pcscd -f -d

    检查安装了哪个内核版本:uname -a

    黑名单pn533nfc司机(参考:Arch Linux wiki Touchatag RFID Reader,nfc-tools forum):

    $ sudo nano /etc/modprobe.d/blacklist-libnfc.conf
    

    添加以下行:

    blacklist pn533
    blacklist nfc
    

    禁用内核模块:

    $ modprobe -r pn533 nfc
    

    重启pcscd守护进程:sudo service pcscd restart

Here you can fine a small program to test your ACR122U reader and a more detailed guide.

【讨论】:

如下文所述,您可能还需要禁用 pn533_usb。此外,您可以使用 modprobe -rf 强制卸载。不过要注意顺序。如果您尝试先卸载具有依赖项的模块,它仍然会失败。 medium.com/@andv/…【参考方案2】:
sudo modprobe -r pn533_usb

sudo modprobe -r pn533

为我工作。

--------@--------:~$ sudo nfc-list
nfc-list uses libnfc 1.7.1
NFC device: ACS / ACR122U PICC Interface opened
1 ISO14443A passive target(s) found:
ISO/IEC 14443A (106 kbps) target:
ATQA (SENS_RES): 00  04  
UID (NFCID1): ab  c9  67  00  
SAK (SEL_RES): 08  

【讨论】:

Linux kali 5.5.0-kali2-amd64 #1 SMP Debian 5.5.17-1kali1 (2020-04-21) x86_64 GNU/Linux 上工作! (评论时的最新直播)【参考方案3】:

快速而肮脏的解决方案:

sudo rmmod pn533 ## unload the driver right now
sudo nfc-list ## now it works...

【讨论】:

【参考方案4】:

在较新的 ubuntu(>1804) 上,还需要黑名单 pn533_usb

$ cat /etc/modprobe.d/blacklist-libnfc.conf
blacklist nfc
blacklist pn533
blacklist pn533_usb

【讨论】:

以上是关于无法认领 USB 接口(设备或资源忙)的主要内容,如果未能解决你的问题,请参考以下文章

avrdude:ser_open():无法打开设备“/dev/ttyACM0”:设备或资源忙

rm -rf /var/lib/docker 设备或资源忙问题处理

rm -rf /var/lib/docker 设备或资源忙问题处理

rm -rf /var/lib/docker 设备或资源忙问题处理

打开失败:EBUSY(设备或资源忙)

把U盘上的资料复制到电脑上时,显示“指定的网络资源或设备不可用”,是啥意思?