跨操作系统蓝牙键盘配置指南

在现代多操作系统环境中,经常需要在不同的操作系统之间无缝切换使用外设,例如蓝牙键盘。本文将分享如何在Windows 11和Ubuntu 22操作系统之间配置蓝牙键盘,以实现无缝切换使用。

准备工作

首先,确保蓝牙键盘已经与Ubuntu 22成功配对,以创建必要的配置文件。然后,在Windows系统中重新配对键盘,以生成所需的注册表键值。最后,回到Ubuntu系统,更新蓝牙配置文件以反映Windows配对尝试的最新值。

解决配对问题

大多数蓝牙设备在与新主机配对时会生成新的配对密钥,从而使得之前的配对连接失效。如果设备可以在不使现有连接失效的情况下与新主机配对,那么可以采用更简单的解决方案:在Ubuntu下正常配对设备,购买一个单独的蓝牙适配器,并配置Windows使用这个适配器而不是内置的蓝牙设备。

Ubuntu蓝牙键盘问题

请注意,Ubuntu 22的默认安装可能在某些硬件上存在蓝牙键盘问题。如果是这样,请按照以下命令更新到最新的蓝牙内核:

wget http://www.kernel.org/pub/linux/bluetooth/bluez-5.66.tar.xz tar xvf bluez-5.66.tar.xz cd bluez-5.66 sudo apt-get update sudo apt-get install -y libusb-dev libdbus-1-dev libglib2.0-dev libudev-dev libical-dev libreadline-dev python3-docutils ./configure --enable-library make sudo make install reboot

迁移蓝牙配对密钥

为了将蓝牙配对密钥从Windows迁移到Ubuntu,遵循了这个GitHub上的说明,并根据安装情况进行了调整。由于Microsoft的安全策略,无法使用regedit查看包含蓝牙配对密钥的注册表分支。但是,可以使用Ubuntu的chntpw包来查看这些密钥。首先安装chntpw:

sudo apt-get install chntpw

然后,打开Windows注册表文件:

cd /[MountedDrive]/Windows/System32/config chntpw -e SYSTEM cd \ControlSet001\Services\BTHPORT\Parameters\Keys ls

使用ls命令列出唯一ID并找到蓝牙控制器的MAC地址。接下来,确定键盘的MAC地址。如果遇到设备每次配对尝试都会生成新的MAC地址,需要仔细选择正确的地址。

查看配对密钥

一旦选择了正确的地址,切换到选定的注册表分支,并输入hex LTK来查看与配对相关的Long Term Key (LTK)的值。

cd [Controller MAC Address] cd [Keyboard MAC Address] hex LTK

现在已经确定了LTK值,将其迁移到Ubuntu,通过编辑蓝牙配置文件:

sudo nano /var/lib/bluetooth/[Controller Unique ID]/[Device Mac Address]/info

然后,将看到文件内容,需要将[LongTermKey]部分的Key值替换为从Windows注册表中获取的配对密钥。

重启蓝牙服务

保存配置文件并重启蓝牙服务:

sudo service bluetooth restart
沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485