Ubuntu 22.04 解决和 Windows 共享蓝牙设备的问题
我有一个 Airpods,连接到 WIndows 可以正常工作,但连接到 ubuntu 后会无法连接,只能删除设备选择重联,但是这又会导致 Windows 不能连接到耳机,只能也删除重新连接,费神费力。
要解决此问题,仍有两办法,让 Windows 将就 Linux,或者 Linux 将就 Windows,由于折腾注册表不太稳定,还是选择后者。
首先进入 Windows,来到 https://docs.microsoft.com/en-us/sysinternals/downloads/psexec 下载 psexec 工具,然后用管理员权限启动控制台并使用 psexec 打开注册表。
psexec -si regedit
在注册表编辑器里按层级查找HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTHPORT\Parameters\Keys\<本机蓝牙>\<设备蓝牙>
进入 Keys 后可以看到第一个 MAC 地址(xx:xx:xx...)的文件夹,这就是本机上蓝牙设备的 MAC 地址,一般来说一台电脑就一个蓝牙。进入此目录后,右侧就是记录蓝牙设备(以 MAC 地址标识)和 Key 的条目。把这些条目记录下来。图例中第一个(A4 开头)就是我的设备。第二个是其他设备。而我的本机蓝牙目录下还有其他目录,这是一些更复杂的设备(手机)
接下来,进入 Linux,输入 sudo su
进入 root,并来到/var/lib/bluetooth
目录。此目录下就是<本机蓝牙>\<设备蓝牙>
,其 MAC 值和 windows 相同。以示例来说,进入其中 A4... 目录并用任意编辑器打开 info 文件,把 LinkKey 的 Key 属性修改为 Windows 注册表下的指,记得小写换大写不要空格。
接下来保存退出,重新启动,即可以正常连接。