我的工作站已经有一个带蓝牙的 wifi 卡,但那个蓝牙非常不稳定,上个月它无法打开(虽然 wifi 还可以)。我以为它坏了,所以我插入了一个 USB 蓝牙适配器,它工作正常。
但最近,wifi 卡上的蓝牙突然又打开了,现在我有两个蓝牙,我不知道哪个是哪个,以及如何连接到 USB 蓝牙,而不是 PCIE 卡
这是输出lsusb
:
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 006: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller
Bus 001 Device 005: ID 04d9:1603 Holtek Semiconductor, Inc. Keyboard
Bus 001 Device 014: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
Bus 001 Device 008: ID 2b89:6209 ibasso IBASSO-DC-Series
Bus 001 Device 004: ID 0a05:7211 Unknown Manufacturer hub
Bus 001 Device 003: ID 0529:0003 Aladdin Knowledge Systems Sentinel HL
Bus 001 Device 013: ID 0cf3:e005 Qualcomm Atheros Communications
Bus 001 Device 016: ID 262a:187a ibasso IBASSO-DC-Series
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
答案1
正常解决方案
您可以使用rfkill
以下方法来禁用特定设备:
- 不带参数运行
rfkill
并确定要阻止的设备的 ID。如果您不确定,只需选择其中一个hci
并在必要时重试:
rfkill
ID TYPE DEVICE SOFT HARD
0 bluetooth hci0 unblocked unblocked
1 bluetooth hci1 unblocked unblocked
[...]
2 bluetooth hciX unblocked unblocked
3 wlan phy0 unblocked unblocked
4 wlan phy1 unblocked unblocked
[...]
5 wlan phyX unblocked unblocked
- 跑步
rfkill block <the number 0 or 1 or etc.>
- 如果错误,请运行
rfkill unblock <that number>
并重复步骤 2
sudo
通常没有必要。systemd-rfkill.service
负责在重启时保存和加载此文件。
最后的解决方案
运行echo 'SUBSYSTEM=="usb", ATTRS{idVendor}=="0cf3", ATTRS{idProduct}=="e005", ATTR{authorized}="0"' | sudo tee /etc/udev/rules.d/81-disable-internal-bluetooth.rules
并重新启动。
这是基于另一个答案以及在您的 中lsusb
,“Qualcomm Atheros Communications”是内部设备,“Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)”是您的适配器。Qualcomm 的设备 ID 从 2 更改为 13(可能卸载并加载了几次),而适配器的 ID 保持不变,这解释了为什么rfkill
无法保存。