Ошибка RSYNC: Как исправить ошибку потока данных протокола RSYNC (код 12)

Введение в использование Rsync между Windows и Raspberry Pi

Rsync — это мощный инструмент для синхронизации и передачи файлов, который широко используется на различных платформах. В этой статье мы обсудим, как успешно настроить Rsync для работы между компьютером под управлением Windows 10 и Raspberry Pi 4 с Debian Linux. Вы также узнаете о распространённых проблемах и методах их решения, которые могут возникнуть в процессе.

Установка и начальная настройка

Прежде всего, убедитесь, что у вас установлены необходимые инструменты. На вашем компьютере с Windows 10 должна быть установлена Cygwin с версией Rsync 3.3.0, а на Raspberry Pi — Rsync 3.2.7. Также необходимо настроить SSH для доступа к Raspberry Pi без необходимости ввода пароля.

Подготовка команды Rsync

Для передачи файлов используйте следующую команду:

C:\cygwin64\bin\rsync.exe -avz /Sites/monsters/ [email protected]:var/www/monsters.local

Здесь [email protected] — это ваш логин на Raspberry Pi, а /Sites/monsters/ — папка на вашем ПК, содержимое которой вы хотите передать.

Ошибки и устранение неполадок

При выполнении команды вы можете столкнуться с ошибками, такими как:

rsync: connection unexpectedly closed (0 bytes received so far) [Receiver]
rsync error: error in rsync protocol data stream (code 12) at io.c(232) [Receiver=3.2.7]
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(231) [sender=3.3.0]

Эти ошибки указывают на проблемы в соединении между вашим компьютером и Raspberry Pi.

Проведение диагностики

Для устранения неполадок рассмотрите следующие шаги:

  1. Проверка установки Rsync на Raspberry Pi: Убедитесь, что Rsync установлен в /usr/bin/rsync и имеет правильные права доступа (например, -rwxr-xr-x).

  2. Тестирование локального Rsync: Попробуйте выполнять команды Rsync локально на Raspberry Pi:

    rsync -Avz --progress ~/testfile /var/www/giantmonstersonthehorizon.local/
  3. Проверка работы SSH: Убедитесь, что SSH-соединение устанавливается успешно с вашей Windows-машины. Вы можете использовать команду:

    ssh -VVV [email protected]
  4. Проверка версии Rsync через SSH: Убедитесь, что сам Rsync доступен черезSSH:

    ssh [email protected] "/usr/bin/rsync --version"
  5. Проверка конфигурации SSHD: Убедитесь, что в sshd_config нет ограничений на использование Rsync, таких как ForceCommand.

Выводы и дальнейшие шаги

После выполнения вышеуказанных шагов вы должны иметь более ясное представление о причинных факторах, которые мешают успешной работе Rsync:

  • Rsync работает локально на Raspberry Pi, но не может устанавливать соединение для удалённой передачи из Windows.
  • Аутентификация SSH происходит без проблем, однако процесс Rsync сталкивается с трудностями в установлении связи.
  • Возможны несовместимости между версиями Rsync на Windows и Raspberry Pi, либо проблемы с сетью, прерывающие передачу данных.

Если проблемы продолжают возникать, проверьте сетевые настройки и убедитесь, что на обоих устройствах нет ограничений на передачу данных.

Заключение

Работа с Rsync между Windows и Raspberry Pi требует тщательной настройки и диагностики. Следуя приведённым выше рекомендациям, вы сможете устранить основные проблемы и добиться корректной передачи файлов. Не стесняйтесь обращаться за помощью и делиться опытом с другими пользователями!

Источник

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *