如何通过 Tar 使用 Pigz

How to use Pigz with Tar

所以我在 tar 和

中使用 pigz
tar --use-compress-program=pigz

这可行,但它没有使用我所有的处理器,我想确保它是递归的 (-r) 并使用(-9 压缩级别)。

我通读了 Utilizing multi core for tar+gzip/bzip compression/decompression 但它没有在任何地方注明以该格式添加额外的命令,而且我在这两个程序的手册页中找不到任何额外的 swithed。

谢谢, 凸轮

Mark Adler 在您问题中包含的 SO link 上投票最高的答案确实提供了指定压缩级别以及要使用的处理器数量的解决方案:

tar cf - paths-to-archive | pigz -9 -p 32 > archive.tar.gz

参见:

快速解压:

tar -I pigz -xf /mnt/sd/current/backup/bigbackup_web.tar.gz -C /tmp

快速打包:

tar -cf bigbackup.tar.gz -I pigz /opt

然后:

apt-get install pigz

yum install pigz

要使用 -I--use-compress-program 将参数传递给 pigz,您可以 enclose the command and arguments in quotes,像这样:

tar --use-compress-program="pigz --best --recursive" -cf archive.tar.gz YourData

这里有一个监控存档创建速度的有趣选项:

tar --use-compress-program="pigz --best --recursive | pv" -cf archive.tar.gz YourData