我的一台服务器是一个图像存储库,其中有超过一百万个文件分布在大约300个目录中.每个文件平均只有几百千字节.比其他任何一个盒子都要多,这个问题证明是有问题的.
rsync进程将工作一段时间 – 有时是20分钟,有时是一小时 – 然后它只是退出并以给定的文件名闲置.
我已验证该文件在远程服务器上没有损坏,并且该文件已在本地驱动器上成功创建.我在-vv模式下运行rsync客户端,它不返回任何内容.我检查了守护进程创建的日志.我查看了接口上的网络利用率,它正处于空闲状态.我查看了AV设置,看看是否有任何问题可能造成问题.我甚至更新到Cygwin的最新版本.
为了保持这种连接,我需要什么?
编辑:
客户端系统正在使用该命令
rsync.exe server::Drives/f/Repo/ /cygdrive/T/Repo --archive -P -vv
服务器正在使用该命令
rsync.exe –daemon –no-detach –config“rsyncd.conf”
rsyncd.conf的内容:
use chroot = falsestrict modes = falsehosts allow = 192.168.100.9log file = c:/rsyncd.loguID=0gID=0[Drives]path = /cygdriveread only = yes
编辑:
文件服务器是2003,阵列上的磁盘类型是GPT,阵列的大小约为4 TB.
编辑:
陌生人..看起来这个过程在大约175,000个文件中可靠地出错.当我选择同一个目录时,Rsync运行正常.
编辑:
rsync version 3.0.9 protocol version 30copyright (C) 1996-2011 by Andrew TrIDgell,Wayne Davison,and others.Web site: http://rsync.samba.org/CapabilitIEs: 64-bit files,64-bit inums,32-bit timestamps,64-bit long ints,no socketpairs,hardlinks,symlinks,IPv6,batchfiles,inplace,append,ACLs,xattrs,iconv,symtimes
从使用Cygwin的同一组文件转到linux安装时发生类似的故障.然而,直到比正常时间晚几个小时才发生.
解决方法 你没有说总数据量,所以我不能确定,但我之前在类似大小的存储库上使用过rsync.到目前为止,我还没有遇到过这个问题.我的绝大部分用途是在linux / Unix设备上,偶尔只运行windows.要弄清楚实际发生了什么,你可能想尝试使用额外的-v参数运行rsync,看看你是否可以获得足够的细节来查看它挂起时它正在做什么.如果这没有帮助,您可以考虑在strace或ltrace下运行rsync.
作为解决方法,您可以尝试使用–include-from = file指定要包含的目录列表,然后列出您提到的300个目录.我不确定这是否会遇到你所看到的同一个问题.
如果这不起作用,你可以循环遍历目录列表和每个单独的rsync,例如:
for DIR in $(cat file_of_dirs); \do rsync.exe server::Drives/f/Repo/$DIR /cygdrive/T/Repo --archive -P -vv; \done
(写给bash / bourne shell,因为你说你安装了Cygwin.可以在行的末尾没有尾部斜杠的情况下完成一行.)
显然,这并没有回答为什么rsync会为你挂起的问题,但它应该让你的文件再次同步.
总结以上是内存溢出为你收集整理的Cygwin的RSYNC用于大数据传输全部内容,希望文章能够帮你解决Cygwin的RSYNC用于大数据传输所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)