Windows+Linux+MacOS三大系统共用蓝牙鼠标

首先要做的是在三个系统里都匹配一次。让系统留下蓝牙鼠标的信息。然后先去MacOS系统里去查看LinkKeys,再到Linux或Windows下去修改相应值。

一、MacOS(Mojave)下命令行输入:
sudo defaults read /private/var/root/Library/Preferences/com.apple.bluetoothd.plist

MacOS下蓝牙配对信息,包括蓝牙鼠标等

可以看到两组Mac地址,蓝牙硬件的Mac地址:4C-EB-42-C7-0F-E1 ,我鼠标的Mac地址:F0-1D-BC-E5-BF-FD,也就是LinkKeys的第二个这一行后边的值。这行值要转换一下,从右至左,每2位取一次,转化后为(与截图不一致,截图是配对前的值,配对后发生了变化):

原值为:e3156743 67c0c408 f5dca2aa 1ffb8a6d
转换后:6d8afb1f aaa2dcf5 08c4c067 436715e3

转换后的值,拿好备用。Linux和Windows都将要用到这组值。

二、windows下需要编辑注册表来达到目的。因为相关注册表键值的编辑需要Psexec.exe,去微软官网可以下载到Pstools包,里面有。
打开一个管理员权限的命令行,使用命令运行以便打开注册表:PsExec.exe -s -i regedit
找到 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\BTHPORT\Parameters\Keys\{电脑蓝牙MAC地址}\{要修改的蓝牙鼠标MAC}\{要修改对应值}
把从MacOS里获取到的值去替换相应的 要修改对应值 。见下图。

三、Linux下最简单,使用你熟悉的编辑器,sudo起来修改对应文件即可,蓝牙鼠标相应配对信息路径,中括号里的内容,根据你机器不同而不同。
/var/lib/bluetooth/{4C:EB:42:C7:0F:E1}/{F0:1D:BC:E5:BF:FD}/info
找到相应LinkKey,替换成对应的值。

注意:Linux下的Mac地址中没有空格,且全部都大写,不想自己转换大小写的,去百度搜一下在线大小写转换即可。在替换的时候把中间所有空格去掉。

四、到此,本人笔记本上Windows\Linux\MacOS,三个系统可以使用同一个鼠标进行无缝切换!

Linux下自动挂载的Windows分区无写权限,原因之一可能是Windows并未真正关机!

我们都习惯了头疼医头,脚疼医脚。事实证明,有时候也不一定是对的。

最近遇到了一个超级麻烦的问题,具体表现在:安装好一直正常的Linux系统(linuxmint)突发无法在自动加载的ntfs分区中创建或修改文件,丢失了写权限。而写权限之前没太注意什么时候丢的,但可以肯定的是,系统安装后是有写权限的,因为我安装calibre就是读取的ntfs分区上书库目录。

于是好一番折腾,看日志,重新安装ntfs-3g,fstab文件挂载的各种选项设置。最终在一篇博文中发现了ntfsfix命令,运行后其中有一行提示:

Windows is hibernated, refused to mount.

我靠!windows这货得有多坑!Win10操作关机只是深度休眠这个情况我是知道的。于是重新启动到windows下,关闭系统推荐的启用快速启动:

控制面板电源选项-左边菜单的选择电源按钮功能关机设置启用快速启动(推荐)

把前面的复选框选掉。回到Linux系统中,什么都不用干,右键菜单里出现的创建文件和创建文件夹为可用状态!

问题完美解决!有遇到和我相同情况的兄弟们,去Windows下看一下你的快速启动是不是开启。enjoy it!

后记:话说,现在的Linux各类发行版都基本上很稳定,通常情况下不会发生什么无法解决的问题。不过这回这个问题实在是没有想到。