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

rsync не синхронизирует файлы

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

Во-первых, вот команда, которую я использую:

server1# rsync -av -e ssh ./server1_dir/ root@192.168.1.1:/server2_dir/

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

Если я убью процесс и сделаю еще одну попытку, он вообще не запустится. Единственное сообщение, которое я вижу:

sending incremental file list

Первая мысль была - firewall. Но на обоих серверах он не установлен. Я даже пробовал вручную скомпилировать последний rsync версия безуспешно.

Может ли кто-нибудь помочь мне с этой проблемой? Большое спасибо.

Обновить. вывод strace на server1

root@server1 [~]# ps auxf|grep [r]sync
root     13958  0.0  0.0  70676  1232 pts/0    S+   23:29   0:00  |       \_ rsync -avv -e ssh directory1 root@192.168.1.1:/home
root     13959  0.0  0.2  58436  3256 pts/0    S+   23:29   0:00  |           \_ ssh -l root 192.168.1.1 rsync --server -vvlogDtpre.isf . /root

root@server1 [~]# strace -p 13959
Process 13959 attached - interrupt to quit
select(7, [3 4], [], NULL, NULL

Наконец-то проблема решена. Трудно поверить, но это был неверный MTU, установленный на основном сетевом интерфейсе. После изменения MTU на 1460 процесс синхронизации был запущен и немедленно завершился. Спасибо всем за ответы.

Недавно я столкнулся с такими же симптомами. Обе стороны strace показали, что они находятся в select () и ждут другой стороны. Затем я заметил, что на стороне сервера была большая очередь отправки в netstat, поэтому я начал искать решения на уровне сети. Я попытался уменьшить MTU, как указано выше, но это не помогло. Затем я отключил SACK с обеих сторон, и rsync снова заработал:

echo 0 > /proc/sys/net/ipv4/tcp_sack

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