Barrier 是一款免费的流行 KVM 软件,可实现多个设备之间鼠标/键盘共享。
我已经摆弄它几个小时了,但似乎还是做不好。
我的 Windows 机器上运行着一个屏障服务器。我已下载 git 存储库并构建了二进制文件。我已将barrier
和barrierc
复制barriers
到 中/usr/bin
。
如果我运行 barrier GUI,指定服务器 IP 并启用服务器,它就可以工作。我可以使用或不使用 SSL 来完成此操作(只要客户端和服务器都具有相同的设置)。但我更喜欢使用 SSL。
然后我尝试运行barrierc --enable-crypto <ip>
。服务器确认了连接,但表示它不安全并且不起作用。但是,如果我使用使其在前台运行的-f
标志运行相同的命令,一切都会顺利进行。barrierc -f --enable-crypto <ip>
由于我使用的是 Ubuntu 18.04,因此我设置了一个 systemd 服务,如下所示:
[Unit]
Description=Barrier mouse/keyboard share
Requires=display-manager.service
After=display-manager.service
StartLimitIntervalSec=0
[Service]
Type=simple
ExecStart=/usr/bin/barrierc -f --enable-crypto 192.168.12.96
Restart=always
RestartSec=1
User=karlovsky120
[Install]
WantedBy=multi-user.target
我已将其命名barrier.service
并复制到/etc/systemd/system/
。
我尝试过手动启动它,但它拒绝工作。从状态来看systemctl
,它似乎systemd
运行了客户端,但客户端立即退出,然后重新启动它。我尝试过有和没有该标志-f
,但结果是一样的。
服务器还抱怨客户端连接可能不安全,这与尝试使用非 SSL 客户端连接到 SSL 服务器时遇到的错误相同。无论是否带有标志,都会出现这种情况-f
。
我知道我必须启用该服务才能使其在启动时运行,但我该如何让它正常工作呢?
答案1
我在 Ubuntu 20.04 上成功了,但在 18.04 上步骤可能不会有什么不同
您可能需要先撤消 barrier.service,然后执行以下操作
- 在客户端 Ubuntu 上使用键盘和鼠标进行工作设置,记下[客户端/屏幕的名称]
- 打开终端并获取与当前工作设置等效的完整 cli 命令,而无需使用配置文件,即运行“ps aux | grep barrier”
user@hp-eo800-g1-aio-u:~$ ps aux | grep barrier
user 1278 0.0 0.1 98896 10256 ? Sl Nov16 0:29 /usr/bin/barrierc -f --no-tray --debug INFO --name [name of your client/screen] --enable-crypto --log /var/log/barrier.log [SERVER IP ADDRESS]:24800
user 14737 0.0 0.0 9036 668 pts/0 S+ 09:41 0:00 grep --color=auto barrier
user@hp-eo800-g1-aio-u:~$
- 注意 ps 输出的最后一部分,这是运行 Ubuntu 作为客户端所需的所有参数的完整命令,复制它
/usr/bin/barrierc -f --no-tray --debug INFO --name [name of your client/screen] --enable-crypto --log /var/log/barrier.log [SERVER IP ADDRESS]:24800
- 在启动应用程序偏好设置中创建一个新条目 启动应用程序偏好设置中的新条目和粘贴命令到命令部分,如所附屏幕截图所示
- 现在重新启动以测试它是否会在桌面管理器启动时自动启动。
答案2
我认为我能够在运行 Ubuntu 20.04 和屏障版本 2.3.3 的 Raspberry Pi 4 上更简单地做到这一点:
- 编辑
~/.config/Debauchee/Barrier.conf
- 设置
autoHide
值:autoHide=true
然后,您只需将/usr/bin/barrier
(不是 barrierc)不带任何参数添加到启动应用程序首选项中即可。
答案3
我以 Ubuntu Snap 的形式安装了 Barrier,因此它不在 /usr/bin/barrier 中。上面的 PS AUX 技巧不起作用,因为它引用的路径也不存在。我猜是一些与 snap 相关的东西。
我的路径是 /snap/bin/barrier.barrierc (用于客户端,barriers 用于服务器)
调整该路径,然后保留所有其他 CLI 选项,并将其放入启动中,效果很好。
答案4
对我有用的是使用启动应用程序偏好设置,但与上面的方法略有不同。
运行以下命令:
# ps aux | grep barrier user 1385 1.0 0.0 98884 9288 ? Sl 21:34 0:01 **/usr/bin/barrierc -f --name <name of screen here> --enable-crypto --log /var/log/barrier.log [192.168.119.201]:24800** root 2727 0.0 0.0 9032 724 pts/0 S+ 21:37 0:00 grep --color=auto barrier
打开启动应用程序偏好设置,但就我而言,我只需要浏览到“barrierc”的位置并选择正确的文件。笔记:由于某种原因,复制和粘贴不起作用。
我在计算机重启之前添加了其余部分并重新加载了屏障。
重新启动并且它起作用了。