Rsync windows синхронизировать папки

Использование Rsync для синхронизации локального и удаленного каталогов на VPS

Вступление

Rsync расшифровывается как «remote sync» (удаленная синхронизация) и является инструментом удаленной синхронизации локального и удаленного файлов. Он использует алгоритм, который минимизирует объем копируемых данных при помощи перемещения только тех частей файлов, которые были изменены.

Данное руководство описывает основное использование этой мощной утилиты. В примерах был использован сервер Ubuntu 12.04, но можно использовать любой современный дистрибутив Linux.

Что такое Rsync?

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

Данное руководство в основном ссылается на rsync как на утилиту, а не на протокол.

Благодаря вездесущности данной утилиты на Linux и Unix-подобных системах и ее популярности как инструмента для сценариев системы, она включена в большинство дистрибутивов Linux по умолчанию.

Основной синтаксис

Основной синтаксис Rsync очень прост, его функционирование похоже на SSH, SCP и СР.

Чтобы создать два пробных каталога и несколько пробных файлов, используйте следующую команду:

mkdir dir1
mkdir dir2
touch dir1/file

Это создаст на сервере каталог под названием dir1, содержащий 100 пустых файлов.

ls dir1
file1 file18 file27 file36 file45 file54 file63 file72 file81 file90
file10 file19 file28 file37 file46 file55 file64 file73 file82 file91
file100 file2 file29 file38 file47 file56 file65 file74 file83 file92
file11 file20 file3 file39 file48 file57 file66 file75 file84 file93
file12 file21 file30 file4 file49 file58 file67 file76 file85 file94
file13 file22 file31 file40 file5 file59 file68 file77 file86 file95
file14 file23 file32 file41 file50 file6 file69 file78 file87 file96
file15 file24 file33 file42 file51 file60 file7 file79 file88 file97
file16 file25 file34 file43 file52 file61 file70 file8 file89 file98
file17 file26 file35 file44 file53 file62 file71 file80 file9 file99

Также был создан пустой каталог dir2.

Чтобы синхронизировать содержимое каталогов dir1 to dir2 на одной системе, введите:

rsync -r dir1/ dir2

Флаг «-r» значит «рекурсивный», что необходимо для синхронизации каталогов.

Вместо него можно использовать флаг «-а»:

rsync -a dir1/ dir2

«-a» является комбинированным флагом.

Он означает «архив» и синхронизирует рекурсивно, сохраняя символьные ссылки, специальные файлы и файлы устройств, время изменения, группу, владельца и разрешения.

Он удобнее и потому используется чаще, чем «-r».

Важное примечание

В конце первого аргумента вышеприведенных команд используется конечная косая, или слеш (/):

rsync -a dir1/ dir2

Слеш необходим для обозначения «содержимого dir1».

Альтернативный вариант без использования конечной косой, поместит dir1, включая каталог, в dir2. Это создало бы иерархию, которая выглядит так:

Всегда проверяйте аргументы дважды перед выполнением команды Rsync.

Rsync позволяет это сделать при помощи команд -n или –dry-run. Флаг -v (что значит «подробно») также необходим для получения адекватного результата:

rsync -anv dir1/ dir2
sending incremental file list
./
file1
file10
file100
file11
file12
file13
file14
file15
file16
file17
file18
. . .

Сравните данный результат с результатом, выведенным при снятии слеша:

rsync -anv dir1 dir2
sending incremental file list
dir1/
dir1/file1
dir1/file10
dir1/file100
dir1/file11
dir1/file12
dir1/file13
dir1/file14
dir1/file15
dir1/file16
dir1/file17
dir1/file18
. . .

Здесь можно увидеть, что сам каталог был перенесен.

Использование Rsync для синхронизации с удаленной системой

Синхронизация с удаленной системой проста, если есть SSH-доступ к удаленному компьютеру и на обеих системах установлена Rsync. Если вам нужно настроить ключи SSH, нажмите здесь.

Установив и проверив доступ SSH между двумя машинами, можно синхронизировать папку dir1 с удаленным компьютером при помощи следующего синтаксиса (обратите внимание, что в данном случае нужно передать непосредственно саму папку, поэтому косую черту следует опустить):

Данная процедура называется «push», так как она «толкает» каталог из локальной системы на удаленную.

Противоположная ей операция зовется «извлечением» («pull»). Она используется для синхронизации удаленного каталога с локальной системой. Если бы dir1 находился не на локальной, а на удаленной системе, синтаксис выглядел бы так:

rsync -a username@remote_host:/home/username/dir1 place_to_sync_on_local_machine

Как в «ср» и подобных инструментах, первый аргумент всегда указывает на источник, а второй – на назначение.

Полезные опции Rsync

Rsync предоставляет множество команд для изменения стандартного поведения утилиты. Некоторые из наиболее необходимых флагов уже рассматривались.

При передаче еще не сжатых файлов, таких как текстовые файлы, можно уменьшить сетевой трафик, сжимая файлы при помощи параметра -z:

rsync -az source destination

Флаг «-P» также очень полезен. Он совмещает флаги «–progress» и «–partial». Первый выводит индикатор выполнения передачи, а второй позволяет возобновить прерванную передачу:

rsync -azP source destination
sending incremental file list
./
file1
0 100% 0.00kB/s 0:00:00 (xfer#1, to-check=99/101)
file10
0 100% 0.00kB/s 0:00:00 (xfer#2, to-check=98/101)
file100
0 100% 0.00kB/s 0:00:00 (xfer#3, to-check=97/101)
file11
0 100% 0.00kB/s 0:00:00 (xfer#4, to-check=96/101)
. . .

Читайте также:  Techstream windows 10 64 bit

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

Это иллюстрирует способность rsync использовать время последнего изменения, чтобы определить, были ли внесены изменения в файлы.

rsync -azP source destination
sending incremental file list
sent 818 bytes received 12 bytes 1660.00 bytes/sec
total size is 0 speedup is 0.00

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

touch dir1/file<1..10>
rsync -azP source destination
sending incremental file list
file1
0 100% 0.00kB/s 0:00:00 (xfer#1, to-check=99/101)
file10
0 100% 0.00kB/s 0:00:00 (xfer#2, to-check=98/101)
file2
0 100% 0.00kB/s 0:00:00 (xfer#3, to-check=87/101)
file3
0 100% 0.00kB/s 0:00:00 (xfer#4, to-check=76/101)
. . .

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

Такое поведение можно изменить с помощью флага «–delete». Прежде чем применять данный флаг, используйте команду «–dry-run» и проведите тестирование, чтобы предотвратить потерю данных.

rsync -a —delete source destination

При необходимости исключить некоторые файлы или каталоги, расположенные в синхронизируемом каталоге, можно внести их в разделенный запятыми список при помощи команды «–exclude=»:

rsync -a —exclude=pattern_to_exclude source destination

Если шаблон исключений был определен, при помощи команды «–include=» исключение можно снять, установив другой шаблон:

rsync -a —exclude=pattern_to_exclude —include=pattern_to_include source destination

Выводы

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

Владение Rsync позволяет проектировать сложные операции резервного копирования, а также получить многоуровневый контроль над тем, что и как передается.

Настройка и использование Rsync Server

Утилита rsync позволяет синхронизировать содержимое двух каталогов как для локальной системы, так и удаленных серверов. Это может использоваться как для резервного копирования, так и поддержания в актуальном состоянии нод кластера.

Использование Rsync Server позволит более тонко настроить работу утилиты и оптимизировать сам процесс синхронизации.

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

Установка и запуск

По умолчанию, утилита может быть не установлена в системе. Установка и последующий запуск выполняются следующими командами.

CentOS 8

yum install rsync rsync-daemon

systemctl enable rsyncd —now

CentOS 7

yum install rsync

systemctl enable rsyncd —now

Ubuntu

apt-get install rsync

Открываем следующий файл:

Настройка

Открываем конфигурационный файл rsync:

И настраиваем его, примерно, следующим образом:

max connections = 10
exclude = lost+found/
dont compress = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2 *.rar *.7z *.mp3 *.jpg

[data1]
path = /data1/
comment = Public folders
read only = yes
list = yes
auth users = rsync_d1
secrets file = /etc/rsyncd.scrt
hosts allow = localhost 192.168.0.15 192.168.0.20
hosts deny = *

[data2]
uid = root
gid = root
path = /data2/
comment = Private folders
read only = yes
list = yes
auth users = rsync_d2, backup
secrets file = /etc/rsyncd.scrt
hosts allow = localhost 192.168.0.16 192.168.0.21
hosts deny = *

где первая группа параметров являются общими настройками:

  • max connections — максимальное число одновременных подключений. Стоит задать, чтобы не перегружать сервер.
  • exclude — папки, которые стоит исключить из синхронизации. В конкретном примере каталог для размещения восстановленных после проверки диска файлов.
  • dont compress — указываем, какие файлы не нужно сжимать при отправке. Имеет смысл указать те, сжатие которых не даст результата, например, архивы, сжатые аудио и изображения.

а также каждый ресурс настраивается отдельно (в нашем примере data1 и data2):

  • uid — пользователь, от которого будет выполнена синхронизация для конкретного ресурса.
  • gid — группа, от которой будет выполнена синхронизация для конкретного ресурса.
  • path — путь до ресурса, для которого выполняется синхронизация.
  • comment — описание для удобства.
  • read only — режим для чтения; позволяет защитить данные от удаления или изменения.
  • list — разрешает или запрещает чтения содержимого каталога. Если запрещено (no), синхронизация может выполняться для конкретно перечисленных файлов.
  • auth users — проверка подлинности, вводом логина с паролем.
  • secrets file — файл, в котором размещены логин и пароль.
  • hosts allow — перечисление хостов, с которых разрешено обращаться к rsync серверу.
  • hosts deny — перечисление хостов, с которых запрещено обращаться к rsync серверу (в данном примере, со всех, кроме разрешенных).

Создаем файл для аутентификации:

rsync_d1:password1
rsync_d2:password2
backup:password3

* где rsync_d1:password1 — соответственно, пользователь rsync_d1 с паролем password1.

В целях безопасности, устанавливаем доступ только для владельца:

chmod 600 /etc/rsyncd.scrt

Перезапускаем сервис одной из команд:

systemctl restart rsyncd

service rsyncd restart

Добавляем порты в брандмауэр.

firewall-cmd —permanent —add-port=873/tcp

firewall-cmd —permanent —add-port=22/tcp

iptables -I INPUT 1 -p tcp —dport 873 -j ACCEPT

iptables -I INPUT 1 -p tcp —dport 22 -j ACCEPT

Запуск клиента

Проверка на локальном компьютере

Сначала выполним следующую команду на нашем сервере:

rsync -avv —progress rsync_d1@localhost::data1 /tmp/

* данная команда выполнит синхронизацию нашего ресурса data1 с каталогом /tmp.

Проверка на удаленном компьютере

Устанавливаем rsync, если еще не установлен:

yum install rsync

Читайте также:  Загрузочная флешка livecd windows 7pe

apt-get install rsync

* первая команда для CentOS, вторая — Ubuntu.

rsync -avv rsync_d1@192.168.0.5::data1 /tmp/

* где 192.168.0.5 — IP-адрес rsync сервера.

Пример готового скрипта для синхронизации папок

Скрипт довольно прост:

password_file=’/etc/rsyncd.scrt’
user=’opros’
ip=’192.168.0.15′
source=’data1′
destination=’/tmp/’

rsync -a —delete-after —password-file=$password_file $user@$ip::$source $destination

  • password_file — пароль, в котором будет храниться пароль.
  • user — учетная запись для авторизации.
  • ip — IP-адрес сервера rsync.
  • source — имя ресурса на сервере.
  • destination — каталог, в который синхронизируем файлы.

После создаем файл с паролем:

* в данном файле указываем только пароль без имени учетной записи.

После задаем права:

chmod 600 /etc/rsyncd.scrt

Автоматизировать синхронизацию можно с помощью CRON:

0 */1 * * * /scripts/syncing.sh

* где /scripts/syncing.sh — наш скрипт. В данном примере задание будет выполняться каждый час.

Ключи запуска rsync

Список и описание опций:

Ключ Описание
-v, —verbose Вывод подробной информации о процессе синхронизации. Стоит использовать для отладки.
-q, —quiet Не выводит сообщения об ошибках.
—no-motd Не выводит приветствие в MOTD
-c, —checksum Сравнивать файлы по контрольной сумме, а не времени или размеру.
-a, —archive Режим архивирования или то же самое, что с ключами -rlptgoD (без -H,-A,-X). Используется для удобства, чтобы не перечислять много опций.
—no- Отключает конкретную опцию, например, вышеописанная no-motd.
-r, —recursive Рекурсивный режим для каталогов.
-R, —relative Использовать относительные пути.
—no-implied-dirs Выключить параметр —relative.
-b, —backup Режим резервного копирования. С его помощью при обновлении файлов в папке назначения для них создается копия.
—backup-dir= В режиме резервного копирования указывает каталог, в котором будут храниться копии.
—suffix=SUFFIX В режиме резервного копирования задает суффикс для сохраненных файлов.
-u, —update Пропускать файлы, которые новее в папке назначения (копировать только измененные файлы).
-d, —dirs Не использовать рекурсию для каталогов.
-l, —links Копировать симлинки как симлинки.
-L, —copy-links Копировать не симлинк а ее содержимое (трансформировать симлинк в каталог).
-k, —copy-dirlinks Преобразовать симлинк на каталог в обычный каталог.
-K, —keep-dirlinks В папке назначения обрабатывать симлинк как каталог.
-H, —hard-links Сохранять жесткие ссылки.
-p, —perms Сохранять разрешения (права доступа).
-E, —executability Сохранить права на исполнение.
—chmod= Изменить права доступа на конкретные.
-A, —acls Сохранить права ACL.
-X, —xattrs Сохранить атрибуты файлов.
-o, —owner Сохранить владельца (только от суперпользователя).
-g, —group Сохранить группу владельца.
—devices Копировать файлы-устройства (разрешено только при выполнении команды с правами суперпользователя).
—copy-devices Копировать файлы устройства как обычные файлы.
—specials Сохранять специальные файлы.
-D Заменяет —devices и —specials одновременно.
-t, —times Сохранять временные отметки.
-S, —sparse Выполнение дефрагментации в момент копирования данных.
-n, —dry-run Режим тестирования. Выполняется пробный запуск, при котором будет показаны изменения, но сами изменения выполнены не будут.
-W, —whole-file Копировать файлы целиком. По умолчанию, для копирования файлов используется алгоритм дельта-хэфера, который позволяет переносить только часть с изменениями. На практике, это сильно ускоряет процесс копирования. Ключ применяется в тех случаях, когда нужно перенести файл целиком.
-x, —one-file-system Не разрешает переходить границы файловой системы. Например, если в один из синхронизируемых каталогов может быть примонтирована сетевая файловая система, ее копирование может вызвать неудобства.
-B, —block-size= Принудительно фиксировать размер блока контрольной суммы
-e, —rsh= Указать оболочку для использования, например SSH.
—existing Не создавать новые файлы в каталоге назначения.
—ignore-existing Не обновлять существующие файлы в каталоге назначения.
—remove-source-files Источник удаляет свои файлы после выполнения синхронизации.
—delete Удалить файлы в папке назначения, если их больше нет в папке источнике (удаление старых файлов).
—delete-before Удалить файлы в папке назначения до начала синхронизации.
—delete-during Удалить файлы в папке назначения в момент синхронизации.
—delete-delay Поиск файлов на удаление в момент синхронизации, а удаление после.
—delete-after Удалить файлы в папке назначения после синхронизации.
—delete-excluded Удалить исключенные из синхронизации файлы в каталоге назначения.
—ignore-errors Удалять файлы даже при ошибках ввода/вывода.
—force Принудительное удаление не пустых каталогов.
—max-delete= Не удалять больше заданного числа файлов.
—max-size= Не передавать файлы с размером более заданного.
—min-size= Не передавать файлы с размером менее заданного.
—partial Оставлять файлы, которые переданы не до конца (процесс копирования завершился в процессе).
—partial-dir= Хранить частично переданные файлы в специальном каталоге.
—timeout= Установить время ожидания от системы ввода/вывода.
—contimeout= Установить время ожидания для подключения к демону rsync.
-I, —ignore-times Все равно копировать файлы, если они имеют одинаковые разметы или время изменения.
—size-only Не копировать только те файлы, которые имеют одинаковые размеры.
-T, —temp-dir= Все временные файлы размещать в определенном каталоге.
-z, —compress Сжимать данные файла во время передачи
—compress-level= Устанавливает уровень сжатия от 0 до 9.
—skip-compress= Не выполнять компрессию для перечисленных файлов.
-C, —cvs-exclude Исключить от копирования файлы, которые исключаются CVS (RCS/ SCCS/ CVS/ .svn/ CVS.adm RCSLOG cvslog.* tags TAGS .make.state .nse_depinfo *

#* .#* ,* *.old *.bak *.BAK *.orig *.rej .del-* *.a *.o *.obj *.so *.Z *.elc *.ln core)

-f, —filter= Добавить правило для фильтра.
—exclude= Исключить из синхронизации файлы, соответствующие выражению.
—exclude-from= Исключить из синхронизации файлы, перечисленные в файле.
—include= Включить в синхронизацию файлы, соответствующие выражению.
—include-from= Включить в синхронизацию файлы, перечисленные в файле.
—files-from= Читать список имен исходных файлов из файла.
—address= Привязать IP-адрес для исходящего сокета.
—port= Использовать определенный сетевой порт.
—sockopts=OPTIONS Использовать специальные опции для TCP.
—blocking-io Использовать блокирующий ввод-вывод для удаленной оболочки
—stats Вывод статистики по передаче данных.
-h, —human-readable Вывод чисел в удобном для чтения формате.
—progress Показывать строку прогресса для синхронизации.
-P То же самое, что —partial и —progress.
-i, —itemize-changes Выводить сводку изменений для всех обновлений
—log-file= Вывод лога в специальный файл.
—password-file= При аутентификации пароль можно хранить в специальном файле. Это необходимо для автоматизации выполнения команды без пароля.
—list-only Показать список файлов, но не копировать их.
—bwlimit= Ограничить пропускную способность (КБит в секунду).
—protocol= Принудительно использовать более старую версию протокола.
—iconv= Запрос кодировки преобразования имен файлов.
-4, —ipv4 Предпочтительно, использовать IPv4.
-6, —ipv6 Предпочтительно, использовать IPv6.
—version Вывод версии rsync.
(-h) —help Вывод справочной информации по использованию rsync.

* самый свежий список ключей rsync можно посмотреть командой man rsync.

Rsync на Windows

Реализация rsync для Windows носит название cwRsync (не является аналогом программы — по сути, это утилита Rsync + библиотека Cygwin). Скачать ее можно на официальном сайте. Для загрузки доступны платная и бесплатная версии. Последняя не позволит поднять Rsync-сервер, получать поддержку, обновления безопасности и возможность работать в графическом интерфейсе.

Запуск в качестве сервера

Мы будем использовать бесплатную поставку для поднятия сервера. Переходим на страницу загрузки backuppc и дожидаемся скачивание архива. Создаем в корне системного диска папку, например, C:\Rsyncd, распаковываем содержимое загруженного архива в созданную папку.

Находим в корне содержимого файл rsyncd.conf и открываем его в блокноте. Добавляем следующие строки:

[data1]
path = /cygdrive/d/backup
read only = false
transfer logging = yes

[data2]
path = /cygdrive/d/Папки пользователей
read only = false
transfer logging = yes
strict modes = false
auth users = home
secrets file = /cygdrive/c/Rsyncd/rsyncd.secrets

* в данном примере мы создали группы настроек data1 для папки D:\backup и data2 для D:\Папки пользователей. Регистр важен! Для второй папке для синхронизации требуется аутентификация.
* синтаксис для настройки аналогичен описанному выше для Linux. Только пути пишутся, начиная с /cygdrive/ .

Регистрируем rsync в качестве службы — для этого открываем командную строку от администратора и выполняем команду:

c:\rsyncd\bin\cygrunsrv -I «RsyncServer» -p /cygdrive/c/rsyncd/bin/rsync.exe -a «—config=/cygdrive/c/rsyncd/rsyncd.conf —daemon —no-detach» -o -t auto -e «CYGWIN=nontsec binmode» -1 /cygdrive/c/rsyncd/rsyncd-stdin.log -2 /cygdrive/c/rsyncd/rsyncd-stderr.log -y tcpip -f «Rsync service»

* где c:\rsyncd или /cygdrive/c/rsyncd — каталог, куда мы распаковали скачанный архив.

Теперь открываем службы Windows, и находим зарегистрированную службу RsyncServer. Кликаем по ней правой кнопкой и выбираем Запустить:

Пробуем выполнить локальную синхронизацию. В командной строке переходим в каталог установки rsync:

rsync.exe -avv —progress 127.0.0.1::data1 /cygdrive/c/Temp

* данная команда синхронизирует содержимое модуля data1 (в нашей настройке это папка D:\backup) в папку C:\Temp (если ее нет, нужно создать перед выполнением команды).

Или в обратном направлении:

rsync.exe -avv —progress /cygdrive/c/Temp 127.0.0.1::data1

Запуск клиента

Процедура использования клиента cwRsync аналогична описанному выше для Linux. Скачиваем архив программы и распаковываем его. Запускаем командную строку и переходим в каталог bin (находится в папке, куда была распакована программа).

rsync.exe -avv —progress admin@192.168.0.15::data1 /cygdrive/c/temp

* обратите внимание на путь назначения — чтобы обратиться к диску C мы написали /cygdrive/c. Итоговое назначение — C:\temp.

Копирование с помощью SSH:

rsync.exe -avv -e «./ssh -p 22» —progress admin@192.168.0.15:/data/ /cygdrive/c/temp

* обратите внимание, что мы пишем не ssh, а ./ssh, иначе, если мы используем 64-х битную систему и бесплатный пакет cwRsync, система не найдет путь до ssh и выдаст ошибку Failed to exec ssh: No such file or directory.

Права на папки и файлы

Rsync в Windows не умеет копировать права для файлов и папок. В результате, мы получим либо копию с неправильными ACL-правами, либо они будут назначены неправильно (права будут выданы по хаотичному алгоритму). Чтобы решить данную проблему после клонирования, можно воспользоваться утилитой robocopy — она входит в состав Windows, начиная с 7-ки.

Команда, которая позволит выполнить исправление прав:

robocopy c:\test d:\backup /MIR /SEC /SECFIX

* в данном примере мы возьмем папку c:\test в качестве источника и отзеркалируем его d:\backup. Ранее скопированные данные не будут копироваться вновь, но будут исправлены права.

Примеры использования rsync

Простая команда для синхронизации двух каталогов:

rsync -a —delete-after user@192.168.0.15::data_source /data_destination

Команда для резервного копирования:

rsync -ab —delete-after user@192.168.0.15::data_source /data_destination

Выполнение синхронизации по SSH:

rsync -a —delete-after -e «ssh -p 22» user@192.168.0.15:/data_source /data_destination

* по SSH запросы идут не через rsync server. В данном примере подключение будет выполнено по 22 порту, под учетной записью user.

Копирование файлов на удаленную машину:

rsync -a —delete-after /data_destination user@192.168.0.15::data_source

Синхронизация в обе стороны (запускаем две команды по очереди):

rsync -a —delete-after user@192.168.0.15::data_source /data_destination

rsync -a —delete-after /data_destination user@192.168.0.15::data_source

Синхронизация файлов по маске:

rsync -a —include=’*.txt’ —exclude=’*’ user@192.168.0.15::data_source /data_destination

* в этом примере будут синхронизированы только файлы с расширением txt.

rsync -a —exclude=’folder/*’ user@192.168.0.15::data_source /data_destination

Возможные проблемы

rsync: change_dir «/» failed: Permission denied

Причина: нет прав на синхронизируемые файлы.

Решение: задать правильного пользователя (uid) в настройках ресурса на стороне сервера.

rsync: failed to connect to x.x.x.x (x.x.x.x): No route to host (113)
rsync error: error in socket IO (code 10) at clientserver.c(122)

Причина: не доступен удаленный хост.

Решение: проверить, что хости доступен по сети. Проверить настройку брандмауэра.

Читайте также:  Как отключить обновление windows 10 gpedit
Оцените статью