Linux/Compression tools

From Wiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

tar

  • create .tar.gz
tar -czvf file.tar.gz directory        # pack directory 
                                       # (c):create (z):gzip (v):verbose (f):file

tar -czf file.tar.gz -C /var/www .     # remove parent directory path
  • list contents
tar -ztvf my-data.tar.gz               # (z):gzip (t):list (v):verbose (f):file
  • extract
tar -xvf archive.tar.gz                # (x):extract (v):verbose (f):file

benchmark

  • Compressing 6144MB kvm image (RAW, 2,7GB used)
Command Arguments compressed size [MB] time [s] additional size [MB]
pigz --best 1526 259.65 533
pigz --fast 1667 28.06 674
cat > target 6144 60.80
copy 6144 59.36
7z a -t7z -mx1 -si 1333 359.66 340
7z a -t7z -mx9 -si 993 1360.15 0
7z a -m0=lzma2 -si 1137 551.40 144
7z a -m0=lzma2 -mx9 -si 1006 788.00 13


  • benchmark script
#!/bin/bash
COMPRESSCMD="pigz -9"
DESC="pigz-best"

START=$(date +%s.%N)
cat image.img | $COMPRESSCMD > /backup/$DESC.img.gz
END=$(date +%s.%N)
DIFF=$(echo "$END - $START" | bc)
echo "$DIFF" > /backup/$DESC.log