Как исправить «rsync: ошибка чтения: сброс соединения одноранговым узлом (131)»?

Это вряд ли возможно

Файл сокета X11 предназначен только для локального подключения и будет доступен только на вашей рабочей станции. Оттуда его TCP.

Поскольку вы использовали SSH с X11Forwarding to SSH на ваш сервер host-a, он создал TCP-соединение между вашей рабочей станцией и сервером. Это TCP X11 отображает "localhost: 10", когда вы находитесь на своем сервере. И клиент SSH на вашей рабочей станции будет перенаправлять трафик оттуда в файл сокета unix .X11. Я не уверен, откуда берется отображение localhost: 11, но это также связано с пересылкой по SSH. Вы сделали только один SSH-переход или два?

Вы можете добиться большего успеха, если включите TCP-прослушивание непосредственно на X-сервере вашей рабочей станции (удалите флаги '-nolisten tcp', и вам может потребоваться добавить '-listen tcp' ) затем сообщите контейнеру докеров, чтобы он использовал дисплей вашей рабочей станции напрямую

docker run .... -e DISPLAY=<workstation-ip-address>:0

Однако тогда вы также, вероятно, получите ошибки 'xauth'

. Вы можете использовать команду xauth для экспорта токена аутентификации в ваш домашний каталог на сервере, а затем смонтируйте его как том докера, чтобы предоставить контейнеру доступ к токену, а также либо установите переменную среды XAUTHORITY в команде docker для этого экспортированного файла xauth, либо используйте xauth внутри контейнера для импорта токена.

Где-то на gitbub у меня есть старый пример контейнера докеров, который делает это для запуска Azureus. Я посмотрю, смогу ли я найти ссылку.

Иногда намного проще добавить сервер VNC в контейнер, запустите свой Java app в сеансе vnc в контейнере и используйте vnc для подключения к нему с рабочей станции.

или на хосте docker вы можете запустить vnc-сервер и использовать docker '-net host' для совместного использования сетевого стека хоста, а также использовать DISPLAY =: 5900 в контейнере и подключиться к VNC display host-a: 0 с вашей рабочей станции. Это обходится без добавления пакетов VNC в ваш контейнер

1
30.06.2017, 11:44
1 ответ

Настройте файл журнала в вашем rsyncd.conf (файл конфигурации демона rsync), например:

файл журнала = /opt/var/log/rsync.log

Затем перезапустите rsync --daemon. Запустите ошибочную команду еще раз.И посмотрите файл журнала:

# tail /opt/var/log/rsync.log

Список файлов журнала демона rsync:

2017/06/30 02:13:27

ОШИБКА: модуль доступен только для чтения

2017/06/30 02 :13:27

Ошибка rsync: синтаксическая ошибка или ошибка использования (код 1) в main.c(994) [Receiver=3.1.2]

Это дает подсказку, чтобы добавить эту строку в rsyncd.conf в соответствующий раздел модуля:

read only = no
2
27.01.2020, 23:33

Теги

Похожие вопросы