本家様 https://zlib.net/pigz/

複数のcoreを使って圧縮、解凍を行います。

xz版 pixz

インストール

epelリポジトリで提供されているようで

[root@c ~]# yum --enablerepo=epel install pigz

とかでインストールを行う。

使い方

[saber@c ~]$ tar cvf - ./sample-A/movie_frames ./sample-B/movie_frames | pigz > images.tar.gz

とパイプ(|)で繋いでpigzに流す。*他にtarのオプションとしても使えるけど
この場合、マシンにある全てのコアを使って圧縮を行います。
圧縮に使うコアを限定したいなら

[saber@c ~]$ tar cvf - ./sample-A/movie_frames ./sample-B/movie_frames | pigz -p 2 > images.tar.gz

とします。これで2coreを使って圧縮してくれます。

また、gzipなので圧縮のレベルも選べて、0から9、そして最大の11が選べる。数字が低ければ軽い圧縮だが速い。
数字が大きければ、高い圧縮を行いますが、時間が相当掛かります。

[saber@c ~]$ tar cvf - ./sample-A/movie_frames ./sample-B/movie_frames | pigz -1 -p 2 > images.tar.gz

メモ
まとめたファイルを直接別のマシンに転送したいのなら

[saber@c ~]$ tar cvf - ./sample-A/movie_frames ./sample-B/movie_frames | pigz -1 -p 2 | ssh root@c10 "cat > /usb/images.tar.gz"

とかとする。

tiff、mrc

tiffファイルに圧縮は微妙。時間が掛かるだけに思える。mrcは物に寄るのでしょうが、良く効く。

解凍

圧縮して出来たファイルはgzipで固めたものと同じとして扱えますので、

(確認)
[saber@c ~]$ tar tvfz images.tar.gz
 
(解凍)
[saber@c ~]$ tar xzvf images.tar.gz

とかで利用できます。

一応、解凍作業自体も pigz で複数coreを使って解凍できる。

[saber@c ~]$ pigz -p 2 -cd images.tar.gz | tar tvf -
最新の60件
2023-12-06 2023-12-05 2023-11-30 2023-11-27 2023-11-21 2023-11-19 2023-11-18 2023-11-14 2023-11-10 2023-11-09 2023-11-05 2023-11-03 2023-10-31 2023-10-30 2023-10-26 2023-10-24 2023-10-19 2023-10-16 2023-10-15 2023-10-12 2023-10-11 2023-10-09 2023-10-03 2023-10-02 2023-09-30 2023-09-29 2023-09-26 2023-09-24 2023-09-19 2023-09-18 2023-09-17 2023-09-16 2023-09-14 2023-09-12 2023-09-11 2023-09-08 2023-09-05 2023-09-02 2023-08-30 2023-08-29

edit


トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2019-07-20 (土) 14:19:53