如何避免一直配对我的蓝牙鼠标?
我是双启动Ubuntu和Windows 8.我有一个微软蓝牙鼠标。 它在两个操作系统中都能正常工作,但每次切换操作系统时都必须配对。
有没有办法使用蓝牙鼠标而不需要每次配对?
这个答案适用于bluetoothd v5.35 – 我认为它也适用于早期版本的bluetoothd v5。
- 与linux中的设备配对
- 重启
- 与Windows中的设备配对
- 按照理论的描述提取链接密钥
- 关闭BlueTooth设备并重启到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
保存,然后重新启动bluetoothd:
sudo service bluetooth restart
当您打开设备时,会出现一个弹出窗口,询问您是否要授权连接蓝牙设备。 你当然可以!
如果从Mac OS中提取链接密钥,则需要反转密钥的字节顺序。 Mac OS将其保存为反向字节序。
你应该配置windows和ubuntu在使用鼠标连接时使用相同的密钥(密码)。
将它与你的ubuntu配对,然后重启到windows,配对并使用连接鼠标获取关键窗口,请在此处查看我的答案以了解如何:
然后重启到ubuntu开放终端:
sudo -i cd /var/lib/bluetooth/ ls
注意你的蓝牙适配器MAC地址
cd [put adaptor mac address here] nano linkkeys
将鼠标的MAC地址前面的密钥更改为正在使用的密钥窗口
按Ctrl + X和y,按Enter保存,然后重新启动。 现在你的鼠标应该适用于两个操作系统。
您现在可能已经找到了解决方案。 不过,这应该有所帮助:
引自http://ubuntuforums.org/showthread.php?t=1479056 (添加了一些格式)
嗨,我通过复制蓝牙链接键让它与我的一起工作。 这是我做的:
找到PC /加密狗的蓝牙地址(让我们说AA:11:11:11:11:11
)。找到键盘的蓝牙地址(让我们说BB:22:22:22:22:22
).Pair the设备通常在Linux下(通过Gnome面板)。
应该有一个名为/var/lib/bluetooth/AA:11:11:11:11:11/linkkeys
,其中包含如下所示的行:
BB:22:22:22:22:22 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 0 6
这里,xxxx是以hex连续写入的16个字节,即链接密钥。
在Windows下正常配对设备(这将更改密钥)。 从Windows获取密钥。 就我而言,它在这个注册表项中:
SYSTEM\ControlSet002\services\BTHPORT\Parameters\Keys\aa1111111111\bb2222222222
不幸的是,当我到达Keys时,RegEdit说“访问被拒绝”,即使以管理员身份登录也是如此。 (我想在某些情况下它可能在另一个ControlSet中。)
在Linux下重启,安装chntpw
。 与Lucid v0.99.5一起打包的版本似乎不支持64位注册表。 Debian repo中的最新版本(撰写时为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字节,hex,表示在Windows中设置的链接密钥。
最后,我复制了(并删除了空格)以替换/var/lib/bluetooth/AA:11:11:11:11:11/linkkeys
。
我不得不断开连接并重新连接(通过Gnome applet),但无论如何我有时必须这样做。 (它在登录之前似乎没有用,但是同样的,即使只在Linux下配对也会发生。这可能是一个不同的问题。)
它对我有用。 对于不习惯编辑配置文件的人来说,这可能有点复杂。 我认为使用SYSTEM
注册表文件的副本也更安全,以防出现问题。
带有Windows 10和K / Ubuntu 17.10双启动的蓝牙鼠标 – 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 /。 通过终端打开Nautilus,使用su获取完全root权限:
4 /。 使用Nautilus通过文件系统导航到蓝牙ROOT – var – lib – bluetooth
5 /。 从蓝牙打开,12位数字(机器MAC地址)打开到设备MAC地址
6 /。 打开设备MAC
7 /。 打开Info文件夹
8 /。 打开信息 – 显示Linux LinkKey数据 – 保存副本或打印屏幕/文件或打印副本以便稍后在此过程中使用。 它使得输入Linux LinkKey变得更加容易。
WINDOWS 10:
在启动Windows之前切换鼠标,不要重新连接。 手指/触摸板将是唯一的手段。
1 /。 使用普通用户密码登录
2 /。 搜索注册表
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 /。 关闭编辑器将保存更改,如果它重新打开,键出现在较低的cass和Windows格式(用逗号分隔而不是冒号)
7 /。 折叠HKEY-L_M并退出Window注册表编辑器。
最后:
关闭Windows 10并重新启动到Windows,而无需打开鼠标。 一旦完全启动,打开鼠标 – 它现在应该在Kubuntu 17.10和Windows 10中都可以使用。