remyxo 发表于 2023-1-6 16:26

Window、Linux和macOS共享蓝牙鼠标教程(修订版)

本帖最后由 remyxo 于 2023-1-6 22:12 编辑

1、前言
昨天写了一篇关于三系统共享蓝牙鼠标的请教贴,不知道里面有什么敏.感词,导致不断被审核,修改困难。刚好重新做了一遍,又有了新的发现,一并添加。
原帖见:https://bbs.pcbeta.com/viewthread-1955985-1-1.html
里面也讲到了异常简单的蓝牙3.0协议下的共享方法,如果你的主机蓝牙不支持4.0以上,可以考虑,但3.0连接慢、不稳定,不建议使用,这也是我重新修订上文的原因之一。
我的Linux是UOS V20 专业版,是基于Debian发行的,理论上与基于Ubuntu的发行版类似。

2、正文
1、先在Windows上配对成功,再在Linux上配对成功,最后在macOS上配对成功(前两个配对的目的是在系统注册表及/var/lib/bluetooth下留下基本的配置框架,最后用从macOS导出的注册表文件中的值去覆盖它。理论上也可以倒过来,但maos下的配置如何修改大部分人并不清楚,无法根据windows的信息去覆盖它)
初始的注册表信息:

2、macOS下,关闭蓝牙鼠标的电源,通过HackinTool导出蓝牙的注册表文件bluetooth.reg(根据论坛大佬的说法必须关闭蓝牙鼠标的电源,也有人说可以不关,但我实测是要关的,不关的话导出的注册表文件无法导出蓝牙鼠标的配置,而关闭后导出,我这里是导出两条,其中一条是蓝牙的,里面有EDIV、ERand,并且蓝牙地址与系统信息里面蓝牙信息是对的上的);

3、再次启动到Windows,终端管理员用户执行pstools\psexec -i -s regedit,打开注册表(不能直接运行regedit.exe,没有管理员权限是看不到keys下面的蓝牙设备及相关信息的),找到蓝牙地址,我这里是d674572985ac(论坛里大佬说windows与macOS下的蓝牙地址只差最后一位,我的差距十万八千里,百思不得其解)
4、用windows下的蓝牙地址d674572985ac替换bluetooth.reg中的c984dd794f5d,然后把bluetooth.reg导入到系统注册表(用macOS下c984dd794f5d项的配置,去覆盖windows下d674572985ac项的配置)。
覆盖后的注册表信息:(注意与图1的对比:导入后注册表项还是d674572985ac,但右边的Address已经改为c984dd794f5d了,LTK等信息也被覆盖了)

重启Windows,Windows下蓝牙能用了!
5、改Linux下的配置,打开终端,sudo到root账号:
sudo -i
cd /var/lib/bluetooth/48:89:E7:2A:CF:CD   #4889E72ACFCD 是本机蓝牙控制器地址
可以看到一个目录D9:24:34:9D:A8:69,这是我的Linux上初始的蓝牙设备地址,需要改为macOS下导出的Address(c984dd794f5d),保持与macOS一致:
mv D9:24:34:9D:A8:69 C9:84:DD:79:4F:5D
6、进入到C9:84:DD:79:4F:5D,编辑info文件,其它的都不动,就改LongTermKey下的三个值:Key(LTK)、EDiv(EDIV,转换为十进制)、Rand(ERand,倒序后转换为十进制),我的测试只需要这三个值及目录名就可以了,无需修改IRK、CSRK。

7、sudo systemctl restart bluetooth 或 sudo service bluetooth restart,如果不生效,重启机器。
蓝牙应该可以用了!

3、其它
1、蓝牙协议4.0及以上,每次配对,蓝牙设备地址(对应注册表中的Address)都会变,以最后一次配对的macOS下导出的Address、LTK、EDIV、ERand为准。
2、Windows下的Address以macOS导出的为准,注册表项(左侧栏)的名字不用改(改了可能会异常,需要验证);

3、Linux的目录名即是蓝牙设备地址,也需要改为macOS的Address。
4、此文中的各类地址只是我的例子,请根据自己机器的实际情况相应替换。

remyxo 发表于 2023-1-6 16:51

本帖最后由 remyxo 于 2023-1-8 12:31 编辑

图怎么丢掉了?这个网站的编辑器还是有点问题。

对2.4及3.2,经测试,不能修改那个Item项的名字(d674572985ac),这个item名应该与注册表的其它地方有关联,机制与Linux是不太一样的,改了就找不到蓝牙鼠标了。

注意:Windows下Item及key都是小写十六进制,Linux下目录名和Key都是大写的十六进制。




Magic_water 发表于 2023-1-6 17:34

Mark一下,改天试一下

13007330630 发表于 2023-1-7 19:28

我的用军刀导出时没有 LTK、EDIV、ERand    那是不是这个这个鼠标不支持? 我的用的华为鼠标AP30

remyxo 发表于 2023-1-7 19:51

本帖最后由 remyxo 于 2023-1-7 19:54 编辑

13007330630 发表于 2023-1-7 19:28 https://i.pcbeta.com/static/image/common/back.gif
我的用军刀导出时没有 LTK、EDIV、ERand    那是不是这个这个鼠标不支持? 我的用的华为鼠标AP30
如果是蓝牙4.0及以上,肯定是有LTK、EDIV、ERand的。确认鼠标已经关闭电源,才能开始用Hackintool导出。

我这里导出了3个蓝牙,第一第三个不知道是啥,在蓝牙列表里看不见,但第二条有EDIV和ERand的就是蓝牙鼠标,而且是跟信息信息-->蓝牙中的设备地址是对应的。

remyxo 发表于 2023-1-7 20:03

13007330630 发表于 2023-1-7 19:28 https://i.pcbeta.com/static/image/common/back.gif
我的用军刀导出时没有 LTK、EDIV、ERand    那是不是这个这个鼠标不支持? 我的用的华为鼠标AP30
我的鼠标同时支持蓝牙3.0和5.0,因此搜索蓝牙设备时有两个:”S1000D 3.0 Mouse“、”S1000D 5.0 Mouse“,我选择蓝牙5.0的那个就是上面的第二条,而如果选3.0的,那就类似上面第一条(蓝牙3.0导出只有1条类似”蓝牙设备地址“=LinkKey(LTK))
你看看是否有两个蓝牙设备可选。

13007330630 发表于 2023-1-7 20:31

按照教程已经搞定。谢谢了。。。。

13007330630 发表于 2023-1-7 20:32

原来是用导出的军刀的数据 修改windows下面的注册表就行了。

13007330630 发表于 2023-1-7 20:36

remyxo 发表于 2023-1-7 19:51 https://i.pcbeta.com/static/image/common/back.gif
如果是蓝牙4.0及以上,肯定是有LTK、EDIV、ERand的。确认鼠标已经关闭电源,才能开始用Hackintool导出。
...

已经解决,问题在于 就是 用opencore启动的windows不行,要不用opencore引导windows才可以用

remyxo 发表于 2023-1-7 20:39

13007330630 发表于 2023-1-7 20:36 https://i.pcbeta.com/static/image/common/back.gif
已经解决,问题在于 就是 用opencore启动的windows不行,要不用opencore引导windows才可以用

OC引导windows有很多未知的问题,我两台笔记本都是用第三方引导工具rEFInd来引导Windows、OpenCore。

13007330630 发表于 2023-1-7 20:45

remyxo 发表于 2023-1-7 20:39 https://i.pcbeta.com/static/image/common/back.gif
OC引导windows有很多未知的问题,我两台笔记本都是用第三方引导工具rEFInd来引导Windows、OpenCore。

OK已经知道问题所在就好说了 。谢谢了

lanhe8 发表于 2023-1-11 14:10

做个记号,备用

谢谢

komeloo 发表于 2023-1-11 15:23

做个记号,过年去倒腾。原来试过4.0的,估计改了名称不能用,希望这次可以。

你我928 发表于 2023-2-7 21:27

有个一件安装就美滋滋了!

jickjick 发表于 2023-2-8 16:22


为什么我管理员输入是这样的 ?



remyxo 发表于 2023-2-8 16:32

本帖最后由 remyxo 于 2023-2-8 16:57 编辑

jickjick 发表于 2023-2-8 16:22 https://bbs.pcbeta.com/static/image/common/back.gif
为什么我管理员输入是这样的 ?
用DOS command(命令提示符,或者新的叫终端)
另外,您确认解压出来的pstools目录是在C:\Users\Administrator目录下吗?
pstools不是内置命令,是从微软网站下载的一套工具集,URL:
https://learn.microsoft.com/zh-cn/sysinternals/downloads/pstools



jickjick 发表于 2023-2-8 19:34

HackinTool导出蓝牙的注册表文件bluetooth.reg
这个怎么操作 ?

remyxo 发表于 2023-2-8 20:43

jickjick 发表于 2023-2-8 19:34 https://bbs.pcbeta.com/static/image/common/back.gif
HackinTool导出蓝牙的注册表文件bluetooth.reg
这个怎么操作 ?


jickjick 发表于 2023-2-9 07:50

remyxo 发表于 2023-2-8 20:43 https://bbs.pcbeta.com/static/image/common/back.gif


要不要关闭SIP之类的,都是IPhone之类的蓝牙地址,没有蓝牙音响的地址

remyxo 发表于 2023-2-9 08:39

jickjick 发表于 2023-2-9 07:50 https://bbs.pcbeta.com/static/image/common/back.gif
要不要关闭SIP之类的,都是IPhone之类的蓝牙地址,没有蓝牙音响的地址

不需要。
页: [1] 2 3
查看完整版本: Window、Linux和macOS共享蓝牙鼠标教程(修订版)