圧縮で作成されたディスクイメージがパイプより小さいファイルを生成するのはなぜですか?

圧縮で作成されたディスクイメージがパイプより小さいファイルを生成するのはなぜですか?

ddケース 1. イメージの作成に使用したもの:

dd if=/dev/rdiskx of=/path/to/image bs=1m. 

サイズは16GBです。圧縮しましたが、突然サイズが100MB程度になりましたね。

ddケース 2. 私はイメージを生成し、gzip を通ってパイプした。

 dd bs=1m if=/dev/rdiskx | gzip > image.gz. 

サイズは11GBです。

どうやって?私ができることはありますか?

ベストアンサー1

私の考えでは、これはgzipに関連しているようです。収縮アルゴリズムとそれが使用する小さな辞書サイズ(32K)。

bsまた、さまざまな値を試してみてください。たとえば、32Kを試してみてください。

また、最初のddがどういうわけかそのイメージをスパースファイルとして保存するのだろうかと思います。

圧縮/圧縮解除の前後に画像サイズは維持されますか?du -smとの値に違いはありますかls -la

おすすめ記事