我正试图在RHEL5上以编程方式踩踏蓝牙.
我已停止服务 – 没问题. rpm -e对于相关的蓝牙套件也没问题,bluez- *.
ps -aef | grep -v grep | egrep -c '(sdpd|hcid)'
返回零,所以我知道守护进程已经消失了.
出于某种原因,我只是无法卸载模块. modprobe -rv一直说它们正在使用中.
依赖关系看起来像这样:
bluetooth -> bnep -> l2cap -> rfcomm -> hidp -> rfcomm -> hidp
但是,即使从顶部开始以便依赖性很简单,modprobe -rv bluetooth返回FATAL:模块蓝牙正在使用中.
那么,我如何找出使用该模块的进程?它似乎不在/ proc / modules或lsof中.
# lsmod | egrep '(bnep|hidp|rfcomm|l2cap|bluetooth)' bnep 82241 0 hidp 83521 0 rfcomm 104809 0 l2cap 89281 5 bnep,hidp,rfcomm bluetooth 118597 4 bnep,rfcomm,l2cap
解决方法
当你做一个lsmod时,蓝牙模块的引用计数是多少?也,
lsmod | grep "bluetooth"
只是为了确保没有可能遗漏的其他依赖项.
按以下顺序弹出模块:
rmmod bnep rmmod hidp rmmod rfcomm rmmod l2cap
然后试试
rmmod bluetooth lsmod