Как быстрее сжимать файлы с помощью Pigz Tool в Linux
Написанный Марком Адлером, Pigz — это аббревиатура от Параллельная реализация GZip. Это отличный инструмент сжатия, который поможет вам сжимать файлы с невероятно высокой скоростью. Являясь усовершенствованием старой доброй утилиты gzip, она использует несколько ядер и процессоров для сжатия данных.
Это руководство проливает больше света на Pigz и расскажет, как использовать эту утилиту для сжатия файлов в системах Linux.
Установка Pigz в системах Linux
Установка Pigz — это легкая прогулка, поскольку пакет Pigz содержится в официальных репозиториях основных дистрибутивов, таких как Debian и CentOS. .
Вы можете установить Pigz одной командой в различных дистрибутивах, используя соответствующие менеджеры пакетов, следующим образом.
sudo apt install pigz [On Debian/Ubuntu]
sudo dnf install pigz [On CentOS/RHEL/Fedora]
sudo pacman -S pigz [On Arch/Manjaro Linux]
OR
yay -S pigz
Как сжать файлы с помощью Pigz
Чтобы сжать один файл в формат zip, используйте синтаксис.
pigz filename
В этом руководстве мы будем использовать файл ubuntu-20.04-beta-desktop-amd64.iso в демонстрационных целях. Чтобы сжать файл, выполните:
pigz ubuntu-20.04-beta-desktop-amd64.iso
Однако, как вы могли заметить, команда удаляет исходный файл при сжатии. Чтобы сохранить исходный файл после сжатия, запустите параметр -k
, как показано.
pigz -k ubuntu-20.04-beta-desktop-amd64.iso
Из вывода мы ясно видим, что исходный файл сохранился даже после сжатия.
Проверьте содержимое сжатого файла в Linux
Чтобы проверить содержимое сжатого файла, включая статистику достигнутой степени сжатия, используйте опцию -l
с командой pigz:
pigz -l ubuntu-20.04-beta-desktop-amd64.iso.gz
Из выходных данных вы увидите не только содержимое заархивированного файла, но и процент сжатия, который в данном случае составляет 1,9%.
Кроме того, вы можете использовать различные уровни сжатия: от 1 до 9. Поддерживаются следующие уровни сжатия:
- 6 – сжатие по умолчанию.
- 1 – самый быстрый, но обеспечивает наименьшее сжатие.
- 9 – самое медленное, но лучшее сжатие.
- 0 – без сжатия.
Например, чтобы сжать файл с наилучшим уровнем сжатия, выполните:
pigz -9 ubuntu-20.04-beta-desktop-amd64.iso
Как сжать каталог с помощью Pigz
Сам по себе Pigz не имеет возможности сжимать папку, он сжимает только отдельные файлы. В качестве обходного пути для архивирования каталогов используется pigz в сочетании с командой tar.
Чтобы сжать каталог, используйте аргумент --use-compress-program
, как показано:
tar --use-compress-program="pigz -k " -cf dir1.tar.gz dir1
Как ограничить количество процессоров при сжатии
Ранее мы упоминали, что служебная программа pigz использует несколько ядер и процессоров при сжатии файлов. Вы можете указать количество используемых ядер с помощью опции -p
.
В приведенном ниже примере мы использовали лучшее сжатие (обозначенное -9
) с 4 процессорами (-p4)
, сохранив при этом исходный код. файл (-k).
pigz -9 -k -p4 ubuntu-20.04-beta-desktop-amd64.iso
Как распаковать файлы с помощью Pigz
Чтобы распаковать файл или каталог с помощью pigz, используйте параметр -d
или команду unpigz.
Используя наш сжатый файл ISO, команда будет такой:
pigz -d ubuntu-20.04-beta-desktop-amd64.iso
OR
unpigz dir1.tar.gz
Сравнение Pigz и Gzip
Мы пошли немного дальше и противопоставили Pigz инструменту Gzip.
Вот результаты:
Gzip-сжатие
time gzip ubuntu-20.04-beta-desktop-amd64.iso
Сжатие свиней
time pigz ubuntu-20.04-beta-desktop-amd64.iso
Gzip-декомпрессия
time gzip -d ubuntu-20.04-beta-desktop-amd64.iso.gz
Декомпрессия свиньи
time unpigz ubuntu-20.04-beta-desktop-amd64.iso.gz
Из сравнения мы ясно видим, что время сжатия и распаковки для Pigz намного короче, чем для Gzip. Это означает, что инструмент командной строки Pigz работает намного быстрее, чем инструмент Gzip.
Более подробную информацию об использовании команды pigz можно найти на страницах руководства.
man pigz
Кроме того, запустите команду ниже, чтобы просмотреть все параметры, доступные для использования с командой pigz.
pigz --help
И вот оно. Мы рассмотрели инструмент командной строки pigz и показали, как сжимать и распаковывать файлы. Мы пошли дальше и сравнили Pigz с Gzip и обнаружили, что Pigz является лучшим из двух с точки зрения скорости сжатия и распаковки. Мы приглашаем вас попробовать и рассказать нам, как все прошло.