Linux以Manjaro为例进行操作,其他Linux发行版可能蓝牙设备信息目录不同,可以根据自己使用发行版的情况进行调整。
Manjaro上使用蓝牙连接鼠标,记录下系统给鼠标分配的Mac地址,如:EB:4E:7D:E0:5A:CC,并进入/var/lib/bluetooth/目录查看对应蓝牙设备的信息
[LongTermKey] Key=A2B8B640870546A3AAFCA3DE95084229 Authenticated=0 EncSize=16 EDiv=8110 Rand=4469572065550191595
Windows上重新连接鼠标,查看鼠标的Mac地址,如:EB:4E:7D:E0:5A:CD
下载 psexec 解压,用管理员权限打开 CMD 并进入 psexec 目录,执行命令:
.\psexec -s -i regedit.exe
在打开的注册表中查找HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\BTHPORT\Parameters\Keys下查找步骤2得到的蓝牙设备注册表信息,按以下映射关系编写Manjaro下蓝牙设备的信息
映射关系
Key => LTK
EDiv => EDIV
Rand => ERand
Key=C1E76F463B5A6E8D73F687B61F1B2A6E Authenticated=0 EncSize=16 EDiv=38881 Rand=13467857169056573745
登陆Manjaro,进入步骤一的目录,并按照步骤4修改蓝牙设备的info文件
sudo -i # 需要 root 权限 cd /var/lib/bluetooth/68\:54\:5A\:56\:E8\:7E/ # 这个地址因人而异 ls # 找到蓝牙鼠标设备地址,比如 C6\:2A\:1B\:33\:2E\:71 mv C6\:2A\:1B\:33\:2E\:71/ DD\:5C\:7D\:AA\:6F\:03 # 改成 windows 的蓝牙设备地址,看上面的截图 cd DD\:5C\:7D\:AA\:6F\:03 vi info # 主要就是修改这个文件
关闭鼠标,重启系统,或者关闭蓝牙等途径多尝试几次,应该就可以了。