Ubuntu 20.04下索尼蓝牙适配器无法识别且设置无法持久化求助
Ubuntu 20.04下索尼蓝牙适配器无法识别且设置无法持久化求助
你遇到的问题确实挺闹心的,先帮你梳理下核心症状:
- lsusb能正常识别到索尼INZONE H9/H7适配器(
Bus 001 Device 005: ID 054c:0e53 Sony Corp. INZONE H9 / INZONE H7),但蓝牙控制器在系统设置GUI和bluetoothctl里完全找不到 - 手动加载
btusb模块、启动蓝牙服务后,虽然能让服务临时运行,但重启后所有设置全失效——模块没加载、服务也处于停止状态 - dmesg日志里还出现了
usbcore: deregistering interface driver btusb,说明btusb模块被莫名注销了,这大概率是问题根源
下面给你几个针对性的排查和解决方向,你可以一步步试:
1. 强制让btusb模块开机自动加载
既然每次重启都要手动执行modprobe btusb,那我们直接把这个模块加入开机加载列表:
- 编辑模块配置文件:
sudo nano /etc/modules-load.d/btusb.conf - 在文件里添加一行:
btusb - 保存退出(按
Ctrl+O回车,再按Ctrl+X),重启后用lsmod | grep btusb验证模块是否自动加载。
2. 修复蓝牙服务的开机启动问题
你之前执行systemctl enable bluetooth没生效,可能是服务依赖没满足或被其他进程干扰:
- 先确认蓝牙服务的依赖链是否正常:
systemctl list-dependencies bluetooth.service - 用强制命令设置蓝牙服务开机必启并立即启动:
sudo systemctl enable --now bluetooth.service - 另外检查rfkill是否锁住了蓝牙:
如果显示rfkill list bluetoothSoft blocked: yes,可以创建一个开机解锁蓝牙的systemd服务:
创建服务文件:
写入以下内容:sudo nano /etc/systemd/system/rfkill-unbluetooth.service
启用这个服务:[Unit] Description=Unblock Bluetooth on boot Before=bluetooth.service [Service] Type=oneshot ExecStart=/usr/sbin/rfkill unblock bluetooth [Install] WantedBy=multi-user.targetsudo systemctl enable rfkill-unbluetooth.service
3. 排查btusb模块被注销的原因
dmesg里的注销日志是关键,大概率是内核兼容性或驱动冲突问题:
- 先查看当前内核版本:
Ubuntu 20.04默认内核对这款索尼适配器的支持可能不足,你可以升级到HWE(硬件启用栈)内核:uname -r
升级后重启,再用sudo apt install --install-recommends linux-generic-hwe-20.04dmesg | grep bt查看是否还有注销日志。 - 检查是否有其他USB驱动和
btusb冲突:
如果发现lsmod | grep -E 'bt|usb'btintel、btrtl等其他蓝牙模块异常,可以临时禁用它们试试,比如:
之后重新加载sudo rmmod btintelbtusb并启动蓝牙服务,看是否能识别控制器。
4. 重置蓝牙配置文件
旧的蓝牙配置可能导致异常,试试重置:
- 先停止蓝牙服务:
sudo systemctl stop bluetooth.service - 删除蓝牙配置目录:
sudo rm -rf /var/lib/bluetooth/* - 重新启动服务:
之后用sudo systemctl start bluetooth.servicebluetoothctl list查看是否能找到控制器。
如果以上方法都不行,还可以尝试升级bluez版本(Ubuntu 20.04默认是5.53,更高版本可能修复兼容性问题):
sudo add-apt-repository ppa:bluetooth/bluez sudo apt update sudo apt install bluez
升级后重启蓝牙服务再测试。
希望这些方法能帮你解决问题,如果有新的日志或测试结果,可以补充出来进一步排查~
备注:内容来源于stack exchange,提问作者fi11222
相关产品推荐
相关产品推荐

