Ubuntu系统蓝牙无法搜索连接耳机的问题求助
Ubuntu系统蓝牙无法搜索连接耳机的问题求助
我来分享几个在Ubuntu上排查蓝牙连接问题的实用方法,你可以一步步尝试:
1. 先重置蓝牙基础服务
这是最常用的快速排查步骤,先试试重启蓝牙服务:
sudo systemctl restart bluetooth
重启完后再尝试搜索并连接耳机,如果还是不行,接着往下走。
2. 重新加载蓝牙内核模块
有时候内核模块异常会导致这类错误,先卸载再重新加载:
sudo rmmod btusb sudo modprobe btusb sudo systemctl start bluetooth
操作完成后再次测试连接。
3. 使用bluetoothctl手动调试
用官方的蓝牙控制台工具来一步步操作,能更清楚看到问题:
- 打开蓝牙控制台:
bluetoothctl
- 在控制台里依次执行命令:
power on # 开启蓝牙 scan on # 开始搜索设备
- 找到你的蓝牙耳机后,记下它的MAC地址(比如
AA:BB:CC:DD:EE:FF),然后执行:
pair AA:BB:CC:DD:EE:FF connect AA:BB:CC:DD:EE:FF
如果连接时还是出现codec相关错误,那大概率是音频编码支持的问题。
4. 安装蓝牙音频相关依赖包
错误提示里的codec capabilities问题,可能是系统缺少对应的音频编码支持组件,安装这些包试试:
sudo apt install pulseaudio-module-bluetooth bluez-tools
安装完成后重启音频服务和蓝牙服务:
pulseaudio -k && pulseaudio --start sudo systemctl restart bluetooth
5. 更新蓝牙固件
有些蓝牙适配器需要适配的固件才能正常工作,你可以先更新系统的固件包:
sudo apt update && sudo apt install --reinstall linux-firmware
更新后重启电脑,再测试蓝牙连接。
6. 修改蓝牙控制器模式
如果你的耳机是比较旧的型号,可能需要切换到经典蓝牙模式:
- 编辑蓝牙配置文件:
sudo nano /etc/bluetooth/main.conf
- 找到
#ControllerMode = dual这一行,去掉前面的注释#,把值改成bredr:
ControllerMode = bredr
- 按
Ctrl+O保存,Ctrl+X退出,然后重启蓝牙服务:
sudo systemctl restart bluetooth
要是以上方法都没解决,你可以先通过lsusb命令找到自己蓝牙适配器的硬件ID(比如类似Bus 001 Device 003: ID 8087:0a2b Intel Corp. Bluetooth wireless interface),再去社区搜索这个ID对应的解决方案,针对性会更强。
备注:内容来源于stack exchange,提问作者bsodwtpc




