Идея довольно проста: пара двухстрочных скриптов (можно обойтись однострочными) -- один на сервере, другой на клиенте, которые привязываются к своим комбинациям клавиш, при последовательном нажатии на которые и происходит эта самая синхронизация. Для этого нам потребуется nc, xclip и notify-send (возможно, что-то придется установить).
Скрипт на сервере выглядит так:
#!/bin/sh notify-send Синхронизирую xclip -o -selection clipboard | nc 172.16.150.6 5800 && notify-send Передано
Вместо 172.16.150.6 надо вписать свой адрес клиента в локальной сети, если клиент и сервер находятся в одной локалке, или адрес tun клиента, если используется подключение VPN. 5800 -- порт для передачи, можно задать любой. Для запуска скрипта на сервере я использовал комбинацию Alt+V. notify-send служит лишь для индикации того, что процесс запущен и успешно завершен.
Скрипт на клиенте:
#!/bin/sh notify-send Слушаю nc -l -p 5800 | xclip -sel clip
Здесь порт 5800 -- тот же, что и на сервере. Если используется файерволл, необходимо открыть порт для входящих соединений. Комбинация клавиш для запуска скрипта -- Alt+C.
Процесс синхронизации сводится к следующему. Выделяем нужный текст на сервере, нажимаем, как обычно, Ctrl+C или ПКМ--Копировать, и, если в тексте нет кириллицы, то синхронизация происходит автоматически, и можно сразу вставлять текст на клиентской машине (Ctrl+V/ПКМ--Вставить). Но, если в тексте есть русские буквы, то вставка не сработает. В этом случае нажимаю Alt+C, а затем Alt+V в активном окне VNC (без захвата клавиатуры), и текст передается из буфера обмена сервера в буфер клиента. Далее вставляю, как обычно (Ctrl+V). Наверно, можно обойтись без скриптов и привязать клавиши к однострочным командам, или вообще использовать одну комбинацию клавиш для клиента и сервера, но у меня с ходу не получилось, а копать глубже я не стал. Есть еще один нюанс: после принудительной синхронизации содержимое буфера обмена на сервере изменяется (символы кириллицы заменяются знаками вопроса), и, если вдруг понадобится заново передать тот же фрагмент, его надо скопировать еще раз (Ctrl+C).