Архив метки: Arhivators

Использование архиватора xz в Linux

Сегодня в статье рассмотрим как пользоваться архиватором xz




Ранее мы рассмотрели Zip, 7-Zip в Linux. В этом руководстве мы поговорим ещё об одном архиваторе – xz.






Мы знаем, что Zip – это стандартный кроссплатформенный инструмент архивирования. Итак, зачем вообще использовать xz?




xz создает архивы гораздо меньшего размера, чем gzip, следовательно, мы можем считать xz лучшей заменой gzip. Мы проверим утверждение о меньших архивах в следующем разделе.




Недостатком xz является то, что он поставляется не со всеми дистрибутивами Linux. Но мы можем установить его с помощью утилиты yum или apt.




Установка xz в Linux




Чтобы установить xz в Debian/Ubuntu, используйте следующую команду:




sudo apt-get install xz-utils




Использование xz для отдельных файлов




Давайте используем xz для сжатия одного файла. Использование идентично gzip:




xz -v data.csv




  • -v позволяет xz отображать информацию о ходе выполнения.




xz имеет те же уровни сжатия 1-9, что и gzip. Сжатие по умолчанию равно 6.  Итак, вот как сжать файл с минимальным уровнем сжатия 1:




xz -v1 data.csv




Для распаковки одного файла используем следующий синтаксис:




xz -dv data.csv.xz




или




unxz data.csv.xz




Использование tar с xz




Как и в случае с gzipxz сжимает только один файл. Вот почему мы должны использовать xz вместе с утилитой tar для сжатия нескольких файлов или целых каталогов. Вот пример сжатия файлов *.csv:




tar cJvf archive.tar.xz *.csv




  • Мы сжимаем все файлы с расширением csv в текущем каталоге в сжатый архив archive.tar.xz



  • Параметр J позволяет выполнять сжатие с помощью xz



  • Из-за опции v tar показывает, какие файлы добавляются в архив




Уровень сжатия по умолчанию 6. Как мы можем это изменить?




Здесь мы указываем минимальный уровень сжатия 1:




tar cvf archive.tar.xz --use-compress-program='xz -1' *.csv




Пожалуйста, обратите внимание, что мы удалили параметр J здесь, потому что –-use-compress-program уже устанавливает программу сжатия.




Распаковка архива tar с помощью xz:




tar xvf archive.tar.xz




  • Мы распаковываем файл archive.tar.xz и извлекаем его содержимое в текущий каталог



  • Из-за опции v tar показывает, какие файлы извлекаются из архива




Более быстрое сжатие с помощью многопоточности




В отличие от gzipxz напрямую поддерживает многопоточность, что ускоряет сжатие.




По умолчанию xz использует только один поток. Мы можем указать количество потоков с помощью параметра -T. 




Значение 0 указывает xz использовать один поток для каждого доступного ядра процессора:




xz -vT0 data.csv




Здесь мы будем использовать три потока:




xz -vT3 data.csv




Использование многопоточности с помощью tar




Ранее мы указывали уровень сжатия с помощью опции --use-compress-program . Теперь мы включаем многопоточность с помощью опции  --use-compress-program, задав количество потоков. Здесь мы снова используем один поток для каждого ядра процессора:




tar cvf archive.tar.xz --use-compress-program='xz -1T0' *.csv




Заключение




В этой статье мы узнали, как сжимать и распаковывать отдельные файлы с помощью архиватора xz.



[endtxt]




. . . .




2023-02-04T00:10:40
Arhivators

Как установить архиватор 7zip на Ubuntu

7zip — это программа с открытым исходным кодом для архивации. Первоначально она была разработана для Windows. Эта программа может запаковывать или распаковывать большое количество форматов архивов, включая свой собственный формат 7z, а также XZ, GZIP, TAR, ZIP и BZIP2. 7zip также часто используется для извлечения RAR, DEB, RPM и ISO файлов. Кроме простого архивирования, 7zip может поддерживать шифрование AES-256, а также самораспаковывающиеся и многотомные архивы. Для систем POSIX (Linux, Unix, BSD), оригинальная программа 7zip была портирована как p7zip (сокращение от “POSIX 7zip”).




Установка 7zip на Debian, Ubuntu или Linux Mint




Основанные на Debian дистрибутивы идут с тремя связанными с 7zip пакетами.




  • p7zip: включает 7zr (минимальный инструмент архивирования 7zip), который может работать только с родным форматом 7z.
  • p7zip-full: содержит 7z, который может поддерживать 7z, LZMA2, XZ, ZIP, CAB, GZIP, BZIP2, ARJ, TAR, CPIO, RPM, ISO и DEB.
  • p7zip-rar: содержит плагин для извлечения файлов RAR.




Рекомендуется установить пакет p7zip-full (а не p7zip), поскольку это наиболее полный пакет 7zip, который поддерживает много различных архивных форматов. Вдобавок, если вы хотите извлекать файлы RAR, вам также нужно установить пакет p7zip-rar. Причина, по которой поддержка вынесена в отдельный пакет плагина в том, что RAR — это проприетарный формат.




sudo apt update
sudo apt install p7zip-full p7zip-rar




Создание и извлечение архивов 7z




Сразу после установки 7zip, вы можете использовать команду 7z для упаковки и распаковки различных типов архивов. Команда 7z использует другие плагины для работы с архивами.




Для создания архива используйте опцию “a”. Поддерживаются следующие типы архивов для создания: 7z, XZ, GZIP, TAR, ZIP и BZIP2. Если файл с заданным именем уже существует, то файлы будут добавлены в существующий архив, вместо его перезаписи.




7z a <имя_архива> <список_файлов>




Для извлечения архива, используйте опцию “e”. Она извлечёт архив в текущую директорию. Количество поддерживающихся типов архивов для извлечения намного больше, чем для создания. Список включает: 7z, XZ, GZIP, TAR, ZIP, BZIP2, LZMA2, CAB, ARJ, CPIO, RPM, ISO и DEB.




7z e <имя_архива>




Другой способ распаковать, это использовать опцию “x”. В отличие от опции “e”, она извлечёт содержимое с полными путями.




7z x <имя_архива>




Чтобы просмотреть список архива используйте опцию “l”.




7z l <имя_архива>




Вы можете обновить или удалить файл(ы) в архиве опциями “u” и “d”, соответственно.




7z u <имя_архива> <список_файлов_для_обновления>
7z d <имя_архива> <список_файлов_для_удаления>




Для проверки целостности архива:




7z t <имя_архива>




Также смотрим man для остальных опций



[endtxt]



2019-10-06T09:02:45
Arhivators