现在我知道你不应该把1000万个文件放到一个目录中开始.把它归咎于开发人员,但因为它就是我所处的位置.我们将修复它并将它们移动到文件夹组中,但首先我们必须将它们从生产框中复制出来.
我第一次尝试rsync但它会失败.我认为这是因为在内存中存储文件的名称和路径大于ram和swap空间.
然后我尝试将它全部压缩成tar.gz但它无法解压缩,文件太大错误(它是60gigs).
我试着做一个tar来解决tar,但是我得到了一个“无法打开:文件太大”
tar c images/ | tar x –C /mnt/coverimages/
额外信息:
/ mnt / coverimages /是我们要将图像移动到的nfs共享.
所有文件都是图像
操作系统:Gentoo
解决方法
如果安装rsync的第3版,它将执行要传输的文件的滚动列表,并且不需要将整个文件列表保留在内存中.在将来,您可能希望考虑散列文件名并基于这些散列的部分创建目录结构.
你可以看到this answer来了解我对散列的意思.