windows与linux共享蓝牙鼠标方案
2026/8/5 23:26:33 网站建设 项目流程

前言

在使用windows+linux双系统时,直接连接蓝牙鼠标的话就会遇到配对问题,在一个系统配对后,使用另一个系统时,需要再次配对,而且每次都需要重新配对。

之所以会发生这个问题,是因为Windows与Linux保存的蓝牙信息不同,而蓝牙鼠标保存的是最近一次的配对信息。

由于Linux下蓝牙配对信息相对容易修改,为了解决这个问题,我们可以把Windows下的蓝牙配对信息迁移到Linux上,这样就可以两个系统都配对了。

流程

1.准备

首先,一定要确保蓝牙鼠标都连接过windows与linux,并且保证最后连接的是windows
配对过windows与linux是为了有信息可以查询修改
最后连接的是windows,是为了把Windows配对的信息迁移到Linux

其次需要下载PsExec,因为Windows下,蓝牙配对信息只有SYSTEM权限才能查看,所以我们需要微软的官方工具PsExec获取SYSTEM权限(当然,也有其它获取SYSTEM权限的方案,PsExec相对简便)

2.Windows端操作

以管理员身份运行,通过psexec开启一个具有SYSTEM权限的powershell,这样才能查看蓝牙信息

./psexec.exe-s-ipowershell

接下来到HKLM:\SYSTEM\ControlSet001\Services\BTHPORT\Parameters\Keys查看蓝牙信息:

cdHKLM:\SYSTEM\ControlSet001\Services\BTHPORT\Parameters\Keys

Keys路径下是电脑蓝牙驱动的MAC地址,进入后,则是各个设备的MAC地址,可以通过设备管理器找到蓝牙鼠标的具体MAC地址:


通过cd进入设备对应的路径下:


然后就可以运行Get-ItemProperty获取蓝牙设备信息了

Get-ItemProperty.


我们需要的信息是:

设备MACLTKERandEDIV

其中ERandEDIV的信息无需更改
设备Mac(d10938302161)需要改为大写,并用冒号分隔D1:09:38:30:21:61

LTK则需要转换为16进制,可以通过执行这个,直接转换

(Get-ItemProperty.).LTK.ForEach{'{0:X2}'-f$_}-join''

LTK最终得到BC4AF702DCDD925997BC9F53191E97EB

最终得到信息
设备Mac>D1:09:38:30:21:61
ERand>4857315185773509896
EDIV>46403
LTK>BC4AF702DCDD925997BC9F53191E97EB


2.Linux端操作

来到Linux下,修改蓝牙配对信息
注:因为过程需要root权限,建议先sudo -i获取root权限
首先,先cd到蓝牙配置目录,找到配对过的蓝牙鼠标,一般可以通过蓝牙面板看到设备MAC

蓝牙鼠标MAC是作为一个文件夹存在的,直接把这个文件夹改名为从Windows得到的MAC地址
注:千万别修改电脑蓝牙MAC,如下图78:XX是电脑蓝牙MAC,里面的D1:XX才是鼠标的MAC,修改鼠标对应的MAC!!!

cd/var/lib/bluetooth/电脑蓝牙MACmv原本MAC 从Windows得到的MAC


然后进入这个文件夹,可以看到info配置文件,接下来把[LongTermKey]中的内容修改为Windows得到的数据就行了:

其中,

Rand对应ERand
EDiv对应EDIV
Key对应LTK

修改后重启,就可以看到效果了

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询