前言

切换双系统时不用重新配对蓝牙鼠标 当然 最简单的是买一个支持此功能的鼠标

正常情况下 重启电脑的次数不多

步骤

linux 中连接鼠标

已经配置好了 所以和 `win` 显示的地址相同

假设此处显示的地址为 2B:B4:8D:52:7B:EC

win 下连接鼠标

用设备管理器查看鼠标 MAC


c397369c4843 就是鼠标的 MAC 地址

下载 psexec

此处所需注册表权限 正常途径打开看不到蓝牙相关信息

使用 psexec 打开 regedit 注册表

进入 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\BTHPORT\Parameters\Keys

在目录中寻找鼠标 MAC 地址 c397369c4843

截图并记录其中的

  • EDIV = 39160
  • ERand = 11022681155342728302
  • LTK = cf 37 0f d5 d8 68 8d ce 89 44 8b 20 bf 0a 4b 71

重启到 linux

关闭蓝牙

进入 /var/lib/bluetooth/${硬件蓝牙MAC} 目录

重命名 ${linux 鼠标MAC 2B:B4:8D:52:7B:EC}${win 鼠标MAC C3:97:36:9C:48:43}

进入 ${win 鼠标MAC C3:97:36:9C:48:43} 目录

编辑 info 文件中的 LongTermKey

1
2
3
4
5
6
[LongTermKey]
Key=7B4C2B57D8BD9D814B0F8E77DA542378
Authenticated=0
EncSize=16
EDiv=17867
Rand=9467824016339893520

修改后

  • Key 对应 LTK 需 删除空格 转为 大写
  • EDiv 对应 EDIV 10进制 位数可能不同
  • ERand 对应 Rand 10进制 位数可能不同
1
2
3
4
5
6
[LongTermKey]
Key=CF370FD5D8688DCE89448B20BF0A4B71
Authenticated=0
EncSize=16
EDiv=39160
Rand=11022681155342728302

重启蓝牙服务 systemctl restart bluetooth

完成

  • 不出意外的话 鼠标应该连接正常了
  • 可以再重启到 win 试下

常见错误

psexec 找不到网络名

原因

因为关闭了 ADMIN$ 共享导致

可以进入 计算机管理 共享 中查看 是否有 ADMIN$ 共享

解决方案

管理员 运行 regedit

进入 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters
新增或修改 AutoShareWksAutoShareServer 格式为 REG_DWORD 赋值 1

进入 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa
新增或修改 restrictanonymous 格式为 REG_DWORD 赋值 1

重启电脑

psexec运行完成后可以考虑反方向操作再给关闭 ADMIN$ 共享

参考地址