====== Συμπίεση ====== ===== gzip ===== ==== Παράλληλη συμπίεση ==== Μία καλή επιλογή εάν έχουμε ΗΥ με πολλούς πυρήνες είναι η χρήση του pigz (παράλληλο gzip). Με την χρήση του pv έχουμε progress bar. Χρησιμοποιούμε 1,2 πυρήνες λιγότερους από όσους διαθέτουμε και συμπίεση -5 που έχει καλή σχέση χρόνου συμπίεσης και ποσοστού συμπίεσης. Για συμπίεση ενός φακέλου folder=myfolder tar -c $folder | pv --size $(du -b $folder | tail -n 1 | cut -f1) | pigz -p 5 -5 > $folder.tar.gz ή χωρίς progress bar folder=myfolder tar -c $folder | pigz -p 5 -5 > $folder.tar.gz Για backup sd κάρτας, που έστω ότι αναγνωρίστηκε ως /dev/sdb dd if=/dev/sdb | pv | pigz -p 5 -5 > sdbackup.img.gz ==== Παράλληλη αποσυμπίεση ==== Για αποσυμπίεση μέχρι 2 πυρήνες μπορούν να χρησιμοποιηθούν pv folder.tar.gz | unpigz -p 2 | tar xvf - ή χωρίς progress bar unpigz -p 2 < folder.tar.gz | tar xvf - Αποσυμπίεση και εγγραφή σε κάρτα sd unpigz -p 2 -c sdcard.img.gz | dd of=/dev/sdd bs=1M Δεν είναι πάντα η πιο γρήγορη, να γίνεται δοκιμή και με 1 διεργασία gzip -dc sdcard.img.gz | dd of=/dev/sdd bs=1M Για να δούμε progress, εκτελούμε σε ένα άλλο τερματικό watch -n 10 'killall -USR1 dd' ===== xz ===== ==== Αποσυμπίεση ==== pixz -d -c sdcard.img.xz | dd of=/dev/sdd bs=1M ===== Πηγές ===== * http://catchchallenger.first-world.info//wiki/Quick_Benchmark:_Gzip_vs_Bzip2_vs_LZMA_vs_XZ_vs_LZ4_vs_LZO#Compression_ratio * http://linuxaria.com/article/linux-compressors-comparison-on-centos-6-5-x86-64-lzo-vs-lz4-vs-gzip-vs-bzip2-vs-lzma * http://tseven.org/post/24072472743/using-tar-pigz-and-pv-to-compress-directories-and