synergy最佳解决方案——barrier
不知道大家有没有一套键盘鼠标控制多台电脑的需求,主流的硬件或说软件有大神整理如下:
软件方案:
- Windows 之间:Mouse Without Borders
- Windows 和 macOS 之间:ShareMouse
- Linux:Synergy 或者它的免费版本 Barrier
硬件方案:
-
对拷线:JUC500、Smart KM Link 等
-
KVM 切换器:Aten
-
USB 切换器
-
Logitech Flow
我的需求到倒还好,一台win11主力机,一台ubuntu desktop,文件需求已经解决了,采用常见的 NFS 方案,当输入需求有 kvm , 但我觉得有点麻烦,需要按键才能切换,用了好几天的 synergy,出现本来还正常的用着,莫名其妙除了好多问题,刚开始用 win做 server,用了几天报错“……无效句柄”
只好放弃选择 ubuntu作为server,正常用了半天,win 这又出问题来了,一直 连接失败,反复尝试反复失败,试过重装试过大佬总结的各种解决方案,最终选择放弃(当然用的 synergy 是网友编译的版本【盗版】)
实在 没办法,选择试一下另一条路线:barrier
众所周知 synergy 是开源软件,但官编的正版是需要付费的,而 barrier 是 synergy fork出的另一个版本,有热心网友便以维护,分支上开放了 win 和 mac 的下载,可以直接使用,而linux版本需要知己动手编译一下。
win 下载安装就不多说,附上 github 地址:
主流的 linux 官方源应该有编译好的版本,如果没有需要自己变异,则具体操如下:
先下载解压源码包(建议先github网页中的Release里找到最新的版本),执行cmake:
$ wget https://github.com/debauchee/barrier/releases/download/v2.3.3/barrier-2.3.3-release.tar.gz
$ tar -xzvf barrier-2.3.3-release.tar.gz
$ cd barrier-2.3.3-release
$ mkdir build && cd build
$ cmake ..
执行cmake后,可能遇到的问题:
报错Could NOT find CURL (missing: CURL_LIBRARY CURL_INCLUDE_DIR),解决方法是安装libcurl4-openssl-dev
报错No package 'avahi-compat-libdns_sd' found,解决方法是安装libavahi-compat-libdnssd-dev
报错Missing library: Xtst,解决方法是安装libxtst-dev
报错By not providing "FindQt5.cmake" in CMAKE_MODULE_PATH解决方法是安装qt5-default
一切顺利的话,输出会是这样的:
...
-- Full Barrier version string is '2.3.3-release-release'
-- Configuring directory /home/mpc/barrier/barrier-2.3.3-release/build/rpm
-- Configuring file barrier.spec
-- Configuring done
-- Generating done
-- Build files have been written to: /home/name/barrier/barrier-2.3.3-release/build
这就表示cmake执行成功了,根据当前环境生成了可用的Makefile,接下来执行编译:
$ make -j3
编译可能会失败ake可能遇到的问题:
报错fatal error: openssl/ssl.h: No such file or directory,解决方法是安装libssl-dev
编译成功后,执行安装,就可以算打完收工了:
$ sudo make install
启动后大致界面如下:
- win端:
-
ubuntu 端:
大同小异
整完收工 !