如何避免一直都必须配对蓝牙鼠标?


13

我正在双重引导Ubuntu和Windows8。我有一个Microsoft蓝牙鼠标。它在两个操作系统上均正常工作,但是每次切换操作系统时我都必须配对。

有什么方法可以使用蓝牙鼠标而无需每次都配对吗?


1
以下答案已经过时,但是我什至不再使用Ubuntu,也不想只复制粘贴此网页。在这里寻找如何与蓝牙LE设备与Linux的蓝牙的新版本做:console.systems/2014/09/...
咱山猫

2
这个问题的最佳答案是在Unix Stack Exchange上:unix.stackexchange.com/a/255510/20344
Mark E. Haase

我已经在Windows 10 / Linux Mint双启动设置中完成了多次。我在Python中创建了以下脚本来帮助加快该过程:github.com/LondonAppDev/dual-boot-bluetooth-pair
Mark Winterbottom

Answers:


6

此答案适用于蓝牙v5.35-我认为它也适用于蓝牙v5的早期版本。

  1. 与linux中的设备配对
  2. 重启
  3. 与Windows中的设备配对
  4. 如thezeroth所述提取链接密钥
  5. 关闭蓝牙设备,然后重新启动进入Linux

确保在启动linux时关闭设备。

否则,它将尝试使用旧的(现在无效)链接密钥反复连接到设备。这可能会触发反蛮力措施,导致设备无法访问。

转到以设备地址命名的子文件夹。您应该在那里找到一个名为“ info”的文件。打开那个

sudo nano /var/lib/bluetooth/XX:XX:XX:XX:XX:XX/YY:YY:YY:YY:YY:YY/info

在该[LinkKey]部分中设置密钥。例:

Key=3E717C5B8735C1984B71636D7B941DEE

现在检查[General]部分并设置

Trusted=false

保存,然后重新启动蓝牙:

sudo service bluetooth restart

当您打开设备时,将出现一个弹出窗口,询问您是否要授权连接的蓝牙设备。当然可以!

如果从Mac OS中提取了链接密钥,则需要反转密钥的字节顺序。Mac OS将其保存为反向字节序。


2
这已经改变了一点。我一直保留着这个指南是最新的:unix.stackexchange.com/questions/255509/...
马里奥奥利维奥弗洛雷斯

对于BLE设备(大多数现代鼠标/键盘),可以在此处
KubaFYI

1

您应该将Windows和ubuntu都配置为在使用鼠标连接时使用相同的键(密码)。

将其与您的ubuntu配对,然后重新启动至Windows,对其进行配对并获取用于连接鼠标的键Windows,请在此处查看我的答案以了解如何:

/superuser/229930/finding-bluetooth-link-key-in-windows-7-to-double-pair-a-device-on-dualboot-com

然后重新启动到ubuntu打开终端:

sudo -i
cd /var/lib/bluetooth/
ls

注意您的蓝牙适配器的MAC地址

cd [put adaptor mac address here]
nano linkkeys

将鼠标的MAC地址前面的键更改为正在使用的键窗口

按Ctrl + X和y,然后按Enter以保存,然后重新启动。现在您的鼠标在两个操作系统上都可以使用。


@Kasiy编辑链接密钥所需的根
thezeroth 2014年

为什么不使用sudo nano /var/lib/Bluetooth/put_adaptor_mac address_here/linkkeys而不是切换到root用户呢?嗯,是我不好的编辑。
αғsнιη

@KasiyA当我按照您在我的特定设置上建议的方式进行操作时遇到了一些问题,我同意理论上可以在不使用sudo -i的情况下完成此操作,但是由于我们最后要进行重新启动,所以这不会导致任何问题。我只是提供对我有用的确切解决方案,并避免给出我认为可以解决的答案。
thezeroth 2014年

1

您现在可能已经能够找到解决方案。但是,这应该可以帮助:

引自http://ubuntuforums.org/showthread.php?t=1479056(添加了一些格式)

嗨,我通过复制蓝牙链接密钥使其与我的产品一起使用。我做的是:


找到PC /加密狗AA:11:11:11:11:11的蓝牙地址(假设BB:22:22:22:22:22)找到键盘的蓝牙地址(假设)。在Linux下,通过Gnome面板正常配对设备。
应该有一个名为的文件/var/lib/bluetooth/AA:11:11:11:11:11/linkkeys,其中包含这样的行:

BB:22:22:22:22:22 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 0 6

在此,xxxx是用十六进制连续写入的16个字节,这就是链接密钥。

在Windows下正常配对设备(这将更改密钥)。从Windows获取密钥。就我而言,它在以下注册表项中:

SYSTEM\ControlSet002\services\BTHPORT\Parameters\Keys\aa1111111111\bb2222222222


不幸的是,即使我以管理员身份登录,RegEdit也会在我访问Keys时说“拒绝访问”。(在某些情况


下,我想它可能在另一个ControlSet中。)在Linux 下重新启动,安装chntpw。Lucid v0.99.5打包的版本似乎不支持64位注册表。Debian存储库中的最新版本(撰写时为v0.99.6-2)对我有用。

为了避免Linux上Windows注册表的不必要修改,我将SYSTEM文件复制到以下位置:/path/to/Windows/System32/config/SYSTEM
我然后用chntpw(使用ls/的浏览注册表cd;?的帮助)打开了该文件:

chntpw -e SYSTEM
ls
cd ControlSet002\services\BTHPORT\Parameters\Keys
ls
cd aa1111111111
ls
hex bb2222222222

这将产生如下内容:

:00000 xx xx xx xx xx xx xx

在这里,xx xx xx还有16个字节(十六进制),表示在Windows中设置的链接密钥。

最后,我将其复制(并删除了空格)以替换中已经存在的值/var/lib/bluetooth/AA:11:11:11:11:11/linkkeys

我不得不断开并重新连接(通过Gnome小程序),但是无论如何我有时还是必须这样做。(这似乎在登录之前都没有用,但是同样的,即使仅在Linux下配对也是如此。这可能是一个不同的问题。)

它对我有用。对于不习惯编辑配置文件的人来说,这可能有点复杂。我认为也可以更安全地处理SYSTEM注册表文件的副本,以防万一出问题了。


欢迎来到Ask Ubuntu!尽管从理论上讲这可以回答问题,但最好在此处包括答案的基本部分,并提供链接以供参考。
凯文·鲍文

对于LE设备,请参考:console.systems/2014/09/…–
Mygod

0

带有Windows 10和K / Ubuntu 17.10 Dual Boot的蓝牙鼠标– HP Z5000蓝牙鼠标

关于此主题的建议列表很长,大多数建议都是过时的,很难遵循。这是使同一蓝牙鼠标在Windows 10和Kubuntu 17.10上均可使用的替代方法。这很简单。这应该可以在其他Debian系统中运行,也可以在其他蓝牙设备中运行。

第一步:

1 /。Windows中的第一对。将蓝牙密钥的副本保存到USB记忆棒中,然后进行打印。这有助于确定用于更改Windows LinkKey的计算机和设备地址。使用regedit(在结果中单击鼠标左键以启用管理员权限)转到-HKEY_LOCAL_MACHINE \ SYSTEM \ ControlSet001 \ Services \ BTHPORT \ Parameters \ keys \ computer MAC \ device MAC。

2 /。重新启动到Linux,然后在linux中配对。

3 /。通过终端用su打开Nautilus以获取全根目录:

4 /。使用Nautilus通过文件系统ROOT导航到蓝牙-var – lib-蓝牙

5 /。通过蓝牙打开12位数字(机器MAC地址)打开到设备MAC地址

6 /。打开设备MAC

7 /。打开信息文件夹

8 /。打开信息-显示Linux LinkKey数据-保存副本或打印屏幕/文件或打印副本以供以后在此过程中使用。它使输入Linux LinkKey更加容易。

Windows 10:

启动Windows之前,请先用鼠标关闭,并且不要重新连接。手指/触摸板将是进行操作的唯一方法。

1 /。使用普通用户密码登录

2 /。搜索regedit

3 /。在结果中,单击鼠标左键以启用管理员权限。

4 /。转到HKEY_LOCAL_MACHINE \ SYSTEM \ ControlSet001 \ Services \ BTHPORT \ Parameters \ keys \ computer MAC \ device MAC

在Linux和Windows中,计算机和设备的地址至少相似或相同。可以从打印出的副本中查看(如果已制作)。5 /。要获得对Keys文件的访问权限,需要提高特权(请参阅https://www.howtogeek.com/262464/how-to-gain-full-permissions-to-edit-protected-registry-keys/)。

6 /。单击键,然后单击“设备Mac”

这将打开一个二进制值编辑器:

1 /。输入使用Nautilus获得的32对linux密钥。

2 /。原始的LinkKey将被视为由8对数字组成的两行。将显示三行。

3 /。将光标放置在第一行的开头,然后输入Linux LinkKey。光标将自动移至下一对。

4 /。输入将以大写字母显示,但是完成后会自动将其转换为小写。Windows将在此过程中将键字符转换为HEX值,这将在新LinkKey的右侧看到。

5 /。新的键输入完成后,将光标放在原始键的开头,然后删除原始的两行。这将保留原始的三行。

6 /。关闭编辑器,如果重新打开,将保存更改,该键以小写形式和Windows格式显示(用逗号分隔,而不用冒号分隔)

7 /。收起HKEY-L_M并退出Window注册表编辑器。

最后:

关闭Windows 10,然后在不打开鼠标的情况下再次重新启动Windows。完全启动后,打开鼠标-它现在应该在Kubuntu 17.10和Windows 10中都可以使用。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.