![适用于 Windows 和 Linux 的更简单的蓝牙设备配对方法](https://linux22.com/image/167859/%E9%80%82%E7%94%A8%E4%BA%8E%20Windows%20%E5%92%8C%20Linux%20%E7%9A%84%E6%9B%B4%E7%AE%80%E5%8D%95%E7%9A%84%E8%93%9D%E7%89%99%E8%AE%BE%E5%A4%87%E9%85%8D%E5%AF%B9%E6%96%B9%E6%B3%95.png)
我有一台 Dell XPS-13,配置为在 Windows 10 家庭版和 Linux Mint 19.3 MATE 版本中进行双启动。我遇到了与其他人相同的问题,希望我的蓝牙鼠标和键盘可以在两个操作系统上工作,而不必每次都重新配对。我在以下位置找到了该指南Windows 和 Linux Mint/Ubuntu 双启动时的蓝牙配对 - 无需配对设备对原理很有帮助,但奇怪的是它依赖于在 Windows 和 Linux 端下载额外的软件,这是完全没有必要的(mods,如果您愿意,请随意与该线程结合;我不能因为代表不足)。
可以使用两个操作系统本机的工具来实现相同的目标......在 Windows 端,regedt32.exe;在 Linux 端,您的本机文件管理器和文本编辑器。回答如下。
答案1
在 Linux 中配对您的蓝牙设备。
重新启动进入 Windows,并在 Windows 中配对相同的蓝牙设备。
运行regedt32.exe。导航到“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTHPORT\Parameters\Keys”
右键单击上述路径左侧窗格中的“Keys”文件夹,然后选择“导出”。在弹出的对话框中,将“保存类型”更改为“文本文件”,确保选择“导出范围”单选按钮“选定分支”,并将文件保存到您选择的名称和位置。为此,如果您已经配置了在两个操作系统之间共享的驱动器分区,那么会很方便,但这并不是绝对必要的,因为您也可以使用拇指驱动器来传输文件。如果导出文件夹时遇到问题,请右键单击该文件夹,选择“权限”,然后将用户添加到可以读取和编辑该文件夹的组中。
现在重新启动进入 Linux。
在 Linux 中打开命令提示符,输入
sudo caja
(如果您没有使用 MATE 运行 Linux,您可能有不同的文件管理器;必要时替换)并根据提示输入您的密码。 这将打开一个具有 SU 权限的文件管理器,因此请小心操作...如果您破坏了您的系统,我不承担任何责任!导航到 /var/lib/bluetooth。在此文件夹内,您将看到两个内容中的一个或两个 - 一个以单个 MAC 地址(计算机的蓝牙适配器)命名的单个文件夹,或多个文件夹,每个文件夹都有自己的 MAC 地址,用于每个配对的蓝牙设备( MAC 地址的格式为 XX:XX:XX:XX:XX:XX)。如果您只找到单个文件夹,则具有这些单独 MAC 地址的文件夹将位于第一个适配器文件夹内。
打开包含您要在双启动模式下配对的设备的 MAC 地址的文件夹。该文件夹内将包含一两个文件......您关心的是“info”文件。双击它,它将在具有 SU 权限的文本编辑器中打开 - 也就是说,您将能够编辑它并保存它。 (顺便说一句,如果您不确定要查找哪个设备,“info”文件包含简单的英文设备名称,因此只需依次打开每个设备,直到找到正确的设备为止)。
打开文件管理器的单独(非 SU)实例,并使用它在另一个窗格中打开从 Windows 保存的文本文件。当您双击该文件时,Linux 可能会询问您是否要执行或编辑它......选择编辑。
Windows 注册表导出将包含多个如下所示的节(每个设备一个)(不用担心,我已更改为伪造的 MAC 和密钥):
Value 1
Name: 0008e024d45e
Type: REG_BINARY
Data:
00000000 31 c0 08 fa 4f 7b d2 4c - 6f e1 7d ba 32 29 a9 a7 1À.ïO{ÒLoá}ºQ)©§
找到包含“Name:”行上的值的节,该行对应于您在第一个 (SU) 窗格中打开的文件的 MAC 地址。请注意,在 Windows 文件中,MAC 地址的格式使用小写字母而不是大写字母,并且没有冒号。
您的蓝牙配对密钥是行中以“00000000”开头并以一堆乱码结尾的字符串。不要复制零或乱码,只复制中间的字符串,其中包含 16 个十六进制代码,中间有破折号。
将该密钥插入“info”文件中的“Key=”行。如果需要,您可以复制并粘贴(我就是这样做的),但您需要将小写字母更改为大写,并删除所有空格和破折号。在上面的示例中,结果行将如下所示:
Key=31C008FA4F7BD24C6FE17DBA3229A9A7
- 现在保存文件,对任何其他设备重复此操作。重新启动进入 Windows,您的设备现在应该可以工作了。重新启动进入 Linux,它应该也可以工作。
最后一点:我使用旧的联想 diNovo 设置来完成此操作,其中包括鼠标、键盘和单独的小键盘。该套件附带一个蓝牙适配器,但我无法让它们与该适配器一起使用,因为 Windows 将该适配器视为单个设备(意味着注册表中只有一个配对密钥),而 Linux 则可以透视该设备并对每个单独的部件进行配对。为了解决这个问题,我通过笔记本电脑本身的蓝牙适配器单独配对每个设备。这样做的缺点是蓝牙键盘不能在 Grub 或 BIOS 中工作,只能在操作系统中工作。但这是我成功完成此设置的唯一方法。