编辑 - 为了澄清/总结,情况如下:
- 语境:服务器 A 上有大文件 (1 TB+),服务器 A 上几乎没有剩余磁盘空间,A 上的磁盘利用率持续快速增长且无法停止,并且没有实际的方法可以在不中断生产流程的情况下添加更多存储
- 目标:将“大文件”从 A 移动到另一台机器 B,并在文件传输过程中从 A 的磁盘中删除已传输的文件部分(考虑到文件大小,传输可能需要一段时间,但磁盘利用率不断增长,所以我们不能只是等待传输完成)
附:请注意,我主要是在寻找成熟的标准解决方案,而不是 bash 脚本/黑客。我认为使用像truncate
.然而,如果没有标准的解决方案并且有人有一个优雅的 bash 脚本(或类似的),我仍然很想看到它。
原始请求:
是否有一个标准的解决方案来删除通过 rsync/scp 传输的大文件(例如 1 TB 以上)?
我发现的解决方案需要额外的磁盘空间来首先将文件分割成多个部分。但是,如果几乎没有剩余磁盘空间可用于这些操作怎么办?
在 scp/rsync 手册页中,我只找到了在文件完全传输后删除文件的开关。