按批次复制正在使用的整个驱动器

按批次复制正在使用的整个驱动器

我需要将经常使用的网络驱动器(约 1TB)复制到远程位置,但在该远程位置,任何文件都不能大于 1.3GB。我该如何实现?我无法先创建整个驱动器的存档,然后将其拆分为 1.3GB 的部分,因为没有可用空间,而且我无法连接或使用任何其他存储设备。我希望它以某种方式开始将所有文件放入存档,并在某个时间开始将其拆分为 1.3GB 的部分并将它们传输到远程位置。

如果有人能帮助我,我将不胜感激!谢谢!

更新 1:我可以通过 SSH 到达远程位置或直接通过 SMB 安装它。

答案1

你还没有确切地说出你如何将文件传输到“远程位置”,但假设你通过 ssh/sftp 传输文件,并且你有 tar+zstd+ssh+split(相当标准的 unix 实用程序,如果你在 Windows 上,你可以使用 Cygwin)你可以这样做

tar cf source_folder | zstd | ssh user@storageserver 'cd target; split --numeric-suffix --bytes=1300M - archive.zstd'   

在目标服务器上,您将获得文件 archive.zstd00 archive.std01 archive.zstd02 archive.zstd03 ~ 1.3GB 块。

它们会完全在 RAM 中传输,直到到达目标服务器:) ... 如果您的“远程位置”无法通过 ssh 访问,那么这当然不起作用,不幸的是您没有提到如何到达“远程位置”,这很不幸,因为正确的答案取决于它。如果您碰巧通过 ssh/sftp 上传,那么这是正确的答案。

相关内容