Назад | Перейти на главную страницу

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

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

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 работает без проблем, как и ожидалось. пожалуйста помоги.

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

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

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

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


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

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

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

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

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

Host *
  ServerAliveInterval 30
  ServerAliveCountMax 6

и, возможно, аналогично на удаленном сервере (в /etc/ssh/sshd_config), например

ClientAliveInterval 30
ClientAliveCountMax 6

Видеть: Какие варианты ServerAliveInterval и ClientAliveInterval значит?

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

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