Barrier - это популярное бесплатное программное обеспечение KVM, которое позволяет использовать мышь и клавиатуру на нескольких устройствах.
Я возился с этим несколько часов и, кажется, не могу понять.
На моем компьютере с Windows работает барьерный сервер.
Я загрузил репозиторий git и собрал двоичные файлы. Я скопировал барьер
, барьер
и барьеры
в / usr / bin
.
Если я запускаю барьерный графический интерфейс, указываю IP-адрес сервера и включаю сервер, он работает.Я могу сделать это как с SSL, так и без него (если и клиент, и сервер имеют одинаковые настройки). Однако я бы предпочел использовать SSL.
Затем я попытался запустить barrierc --enable-crypto
. Сервер подтверждает соединение, но говорит, что оно небезопасно и не работает. Однако, если я запускаю ту же команду с флагом -f
barrierc -f --enable-crypto
, который заставляет ее работать на переднем плане, все работает отлично.
Поскольку я использую 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
Я назвал ее барьер.service
и скопировал ее в / etc / systemd / система /
.
Пытался запустить вручную, но не работает. Из того, что я могу судить по статусу systemctl
, похоже, что systemd
запускает клиента, но клиент немедленно завершает работу, а затем перезапускает его. Я пробовал с флагом -f
и без него, но результат тот же.
Сервер также жалуется на то, что клиентское соединение может быть небезопасным, что является той же ошибкой, которую вы получаете при попытке соединиться с SSL-клиентом с SSL-сервером. Это происходит с флагом -f
и без него.
Я знаю, что мне нужно включить службу, чтобы она запускалась при запуске, но как мне вообще заставить ее работать?
Я проверил и смог запустить барьер.
барьер не работает, попробуйте прочитать STDIN , по умолчанию STDIN отображается в /dev/null
Поэтому вам нужно запустить барьер с картой STDIN в файл с данными
ExecStart=/bin/bash -c 'exec /usr/bin/barrierc -f --enable-crypto 192.168.12.96 </dev/zero'
Мне помогло использование настроек автозапуска приложений, но немного иначе, чем описано выше.
Запустил следующее:
# ps aux | grep-барьер
пользователь 1385 1,0 0,0 98884 9288 ? Sl 21:34 0:01 **/usr/bin/barrierc -f --name <здесь имя экрана> --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=автобарьер
Открыты настройки приложений для запуска, но в моем случае мне просто нужно было перейти к местоположению «barrierc» и выбрать правильный файл. ПРИМЕЧАНИЕ. Копирование и вставка по какой-то причине не работали.
Я добавил остальное и перезагрузил барьер перед перезагрузкой компьютера.
Перезагрузил и заработало.
Я установил Barrier как Ubuntu Snap, поэтому его нет в /usr/bin /барьер. Уловка PS AUX, описанная выше, не работает, потому что она ссылается на несуществующий путь. Я предполагаю, что что-то связанное с оснасткой.
Мой путь был /snap/bin/barrier.barrierc (для клиента, барьеры для сервера)
Настройка пути к этому, сохранение всех остальных параметров CLI и добавление этого в автозагрузку сработало отлично.