我经常处理全盘映像,我经常需要使用 USB-3 磁盘作为临时介质在不太强大的笔记本电脑上读写全盘映像。
复制原始图像可能是最快的方法,但我必须处理有限的可用存储空间。
我需要的是高吞吐量和低 CPU 使用率 - 压缩比对我来说不是那么重要。
我想要一个工具可以非常轻松地压缩创建的图像 - 主要是编码磁盘上的空白空间,以便我只能存储有用的数据,同时使其尽可能快 - 希望几乎和原始dd复制一样快。
我绑定了 use pxz -1,因为它可以使用多个 CPU 内核来加速压缩,希望最快的压缩仍然有用。然而,这似乎没有我想要的那么胖。
压缩 500 GB 磁盘映像估计需要 21 小时:
mint Backup # dd if=/dev/sda bs=100M | pv -ptera -s500G | pxz -1 > Lenovo-Win8-sda.dd.xz
0:09:21 [9.26MiB/s] [6.54MiB/s] [> ] 0% ETA 21:34:46
Run Code Online (Sandbox Code Playgroud)
完全没有压缩预计需要 3 小时才能完成成像:
mint Backup # dd if=/dev/sda bs=100M | pv -ptera -s500G > Lenovo-Win8-sda.dd
0:00:20 [80.2MiB/s] [49.8MiB/s] [> ] 0% ETA 2:50:20
Run Code Online (Sandbox Code Playgroud)
在 15 小时时使用lbzip2 -1 …
我zgrep在一台有 16 个 CPU 的计算机上运行,但运行任务只需要一个 CPU。
我可以加快速度,也许可以利用所有 16 个内核?
PS IO很好,我可以将gzip压缩文件复制到内存磁盘中