超大文件的copy


超大文件的copy


一 几G或几十G的文件的copy

例如需要拷贝exe,iso到远程的机器上,我们可以使用如下的方法:

多线程copy:

1) split + copy + cat [split and cat are Linux command, you can get them from UnxUtils]

2) zip(into many parts) + copy + unzip  [or can use 7z instead of zip]

 

增量copy:

3) rsync [incrementally transfer]

 

二 几百G上至上T的文件的copy

例如数据库文件等得备份,需要对copy工具具备Unbuffered Input/Output (I/O)功能(即不将文件缓存在内存中),否则机器的内存会被耗完然后导致copy失败:

1)eseutil.exe 可以从Exchange server的安装目录中获得,需要拷贝以下的3个文件:

ese.dll
eseutil.exe
exchmem.dll

eseutil.exe的使用如下:
eseutil.exe /y <srcfile> /d <destfile>

 

2)对于win7或windows2008可以对xcopy使用/J来关闭buffered功能,如下:

/J           Copies using unbuffered I/O. Recommended for very large files.
 

三 注意

在copy后使用MD5对文件验证,确保文件被正确的copy。

 

四 参考

How to: Copy very large files across a slow or unreliable network
http://blogs.msdn.com/b/granth/archive/2010/05/10/how-to-copy-very-large-files-across-a-slow-or-unreliable-network.aspx

 

 

完!

posted @ 2011-06-10 20:01  iTech  阅读(2114)  评论(0编辑  收藏  举报