СТИСНЕННЯ ФАЙЛІВ АРХІВАТОРОМ ПІД LINUX У БАГАТО ПОТОКІВ
Робоча швидка архівація:
tar --use-compress-program=pigz -cf base.tar.gz base.sql
Розпаковуємо все в каталог /target/dir, використовуючи багатопотоковий архіватор unpigz:
cat /path/to/archives/backupname.tar.gz.* | tar --use-compress-program "unpigz" -x -C /target/dir
Преамбула
Далеко не всі знають, що існують аналоги gzip і gzip2 з підтримкою SMP, які генерують архіви, повністю сумісні зі стандартними архіваторами. Звуться ці чудо-архіватори pigz,pbzip2 і lbzip2 (два останніх — імплементація bzip2, думаю, краще брати lbzip2, оскільки саме ця версія згадується в доках на tar).
Інсталюємо:
yum install pigz pbzip2 lbzip2
Використовуємо:
Пакувати:
tar cf /directory | pigz name.tar.gz
Розпакувати
cat name.tar.gz | unpigz - | tar xf -
Призначаємо використання pigz у tar за замовчуванням:
у файл /etc/bashrc додати рядок:
alias tarz='tar --use-compress-program=pigz'
echo "alias tarz='tar --use-compress-program=pigz'" >> /etc/bashrc
або:
alias tarz='tar --use-compress-program=pbzip2'
Після чого для архівації використовувати команду:
tarz -cf <output_file.tar.gz> <directory>
