Необъяснимая ошибка rsync (код 255) в io.c

Я использовал скрипт для выполнения rsync в sudo crontab, Сценарий выполняет двухстороннюю rsync (от сервера A к серверу B и обратно). После перезагрузки обоих серверов сервер rsync не работает sudo crontab, Я также установил новый cronjob, и он не работает, ошибка:

rsync error: unexplained error (code 255) at io.c(600) [sender=3.0.6]
rsync: connection unexpectedly closed (0 bytes received so far) [receiver]

Однако при запуске из терминала скрипт rync работает без проблем. пожалуйста помоги.

5 ответов

Одна из причин rsync неожиданно закрытое соединение является проблемой тайм-аута, особенно когда требуется некоторое время для вычисления контрольных сумм файлов, чтобы проверить различия на удаленном хосте.

Чтобы избежать этой проблемы, вам нужно добавить эти настройки в свой ~/.ssh/config или же /etc/ssh/ssh_config:

Host *
  ServerAliveInterval 30
  ServerAliveCountMax 6

и опционально похоже на удаленный сервер (в /etc/ssh/sshd_config), например

ClientAliveInterval 30
ClientAliveCountMax 6

Смотрите: какие варианты ServerAliveInterval а также ClientAliveInterval имею в виду?

Немного трудно ответить, учитывая почти полное отсутствие соответствующей информации, но, как правило, если команда работает из приглашения, а не из задания cron, это потому, что вам нужно указать полный путь к команде (ям). Задания Cron не имеют нормальной пользовательской среды, что особенно означает, что они не имеют такой же PATH, как у обычных пользователей.

Это происходит, когда в соединении отказано:

SSH: подключиться к хост-порту 2222: соединение отказано

с последующим rsync ошибка:

rsync: соединение неожиданно закрыто (получено 0 байтов) [получатель] ошибка rsync: необъяснимая ошибка (код 255) в /SourceCache/rsync/rsync-45/rsync/io.c(453) [получатель =2.6.9]


Возможные причины:

  • В моем сценарии у меня была проблема с брандмауэром. Пробил дыру.
  • неверный пароль (вряд ли решит вашу проблему, но вызовет ту же ошибку)

У меня тоже есть подобные проблемы, когда я отправлял примерно 50 ГБ данных через локальную сеть с помощью команды

      rsync -avhPW --progress . user@192.168.1.233:/path/to/target

Труба несколько раз ломалась, но первые несколько раз мне удавалось просто перезапустить команду. Однако примерно через 20 часов команда перестала работать из-за необъяснимой ошибки.rsyncдаже не вычислил список файлов на рассмотрение. Это также не проблема тайм-аута — целевая машина так и не получила запрос. В итоге я перезагрузил исходную машину. Это заставило rsync снова работать.

Пожалуйста, посмотрите на ваш список fail2ban.

используйте команду: "fail2ban-client set YOURJAILNAMEHERE unbanip IPADDRESSHERE", чтобы разблокировать его и повторить попытку.

Другие вопросы по тегам