我遇到了一个奇怪的问题.我通常使用rsync在服务器之间同步文件,现在这个实用程序以奇怪的方式运行.
首先,这是我使用的命令:
server1# rsync -av -e ssh ./server1_dir/ root@192.168.1.1:/server2_dir/
它按原样启动同步过程,但没有文件同步,只有目录.实际上不是所有目录,因为rsync进程长时间挂起导致超时错误.
如果我杀死进程并再次尝试,它根本不会启动.我看到的唯一消息:
sending incremental file list
首先想到的是 – 防火墙.但是两台服务器都没有安装它.我甚至试过手动编译最新的rsync版本但没有成功.
有人可以帮我解决这个问题吗?非常感谢.
更新.服务器1上的strace输出
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后,同步过程已立即启动并完成.谢谢大家的回答.