我需要tar(或以其他方式压缩)超过270万个文件。 (150GB)
然而,对于这么多文件,tar命令使用的内存太多而我的系统崩溃了。我该怎么办?
tar -cf /path/filename.tar /path_to_file/
基于文件创建日期和'find',我已经尝试分批(多个tar文件可以),但'find'会占用更多内存。
答案 0 :(得分:1)
不确定这是否完全是答案,因为它没有说明如何明确降低tar的内存使用量,但是......
我认为你可以指定与tar一起使用的压缩程序来使用pigz(并行gzip),然后指定要用来更好地帮助管理内存的线程数。也许是这样的:
tar cvf - paths-to-archive | pigz -p 4 > archive.tar.gz
其中-p $ NUM是核心数。