设置障碍以在启动时运行

Kar*_*120 7 networking ssl openssl kvm-switch 18.04

Barrier 是一款免费的流行 KVM 软件,可以在多个设备之间共享鼠标/键盘。

我已经摆弄了几个小时,但似乎无法正确解决。

我的 Windows 机器上运行着一个屏障服务器。我已经下载了 git 存储库并构建了二进制文件。我已经复制barrierbarriercbarriers进入/usr/bin.

如果我运行屏障 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
Run Code Online (Sandbox Code Playgroud)

我已经命名并将其barrier.service复制到/etc/systemd/system/.

我试过手动启动它,但它拒绝工作。从我从systemctl状态中可以看出,它看起来像是systemd在运行客户端,但客户端立即退出,然后重新启动它。我试过带和不带-f标志,但结果是一样的。

服务器还抱怨客户端连接可能不安全,这与您尝试使用非 SSL 客户端连接到 SSL 服务器时遇到的错误相同。它在有和没有-f标志的情况下都这样做。

我知道我必须启用该服务才能让它在启动时运行,但我该如何让它工作呢?

M.N*_*.N. 6

我让它在 Ubuntu 20.04 上为我工作,但步骤在 18.04 上可能不会有所不同

您可能想先撤消barrier.service,然后执行以下操作

  1. 在您的客户端 Ubuntu 上使用键盘和鼠标进行工作设置,记下 [您的客户端/屏幕名称]
  2. 打开终端并获取与当前工作设置等效的完整 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:~$ 
Run Code Online (Sandbox Code Playgroud)
  1. 注意 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
Run Code Online (Sandbox Code Playgroud)
  1. 创建在启动应用程序的首选项的新条目 在启动应用程序的首新条目粘贴命令的命令部分作为连接屏幕顶盖看到
  2. 现在重新启动以测试它是否会在您的桌面管理器启动时自动启动。


小智 6

我认为在运行 Ubuntu 20.04 和 Barrier 版本 2.3.3 的 Raspberry Pi 4 上可以更简单地做到这一点:

  1. 编辑~/.config/Debauchee/Barrier.conf
  2. 设置autoHide值:
    autoHide=true
    
    Run Code Online (Sandbox Code Playgroud)

然后,您可以在不带任何参数的情况下将/usr/bin/barrier(而不是barrierc)添加到启动应用程序首选项中。


小智 0

我测试了,我能够启动屏障。

屏障尝试读取 STDIN 失败,默认情况下 STDIN 映射到/dev/null

因此,您需要使用 STDIN 映射到包含数据的文件来启动屏障

ExecStart=/bin/bash -c 'exec /usr/bin/barrierc -f --enable-crypto 192.168.12.96 </dev/zero' 
Run Code Online (Sandbox Code Playgroud)