В повседневной жизни мы сталкиваемся, архивированные файлы на всех платформах — это Windows , Mac или Linux . Для всех платформ доступно несколько прикладных программ для создания архивных файлов, а также их распаковка. Например, для Windows можно скачать WinRAR. Когда дело доходит до работы на платформе Linux, нам очень важно иметь дело с архивированными файлами.

Здесь в этой статье мы будем обсуждать инструменты архивирования, доступные в стандартном дистрибутиве Linux, их функциях, примерах и т.д.
Что такое архивированный файл?
Файл архива представляет собой сжатый файл, состоящий из одного или нескольких компьютерных файлов вместе с метаданными.
Особенности архивирования
- Сжатие данных
- Шифрование
- Конкатенация файлов
- Автоматическое извлечение
- Автоматическая установка
- Объем источника и информация о носителе
- Возможность упаковывать один файл или поток данных в отдельные файлы определенного размера.
- Контрольная сумма
- Информация о структуре каталогов
- Другие метаданные (данные о данных)
- Обнаружение ошибок
Область применения
- Хранение компьютерных файлов вместе с метаданными.
- Полезно при переносе файла локально.
- Полезно при передаче файлов через Интернет.
- Применение в упаковке приложений.
Полезное приложение для архивирования в стандартном дистрибутиве Linux:
1. Команда tar
tar — стандартный инструмент для архивирования приложений UNIX / Linux. На ранней стадии это была программа архивации ленты, которая постепенно превращается в пакет архивации общего назначения, способный обрабатывать архивные файлы любого типа. tar принимает много фильтров архивирования с параметрами.
Параметры tar
- -A : Добавить файлы tar в существующие архивы.
- -c : Создать новый файл архива.
- -d : Сравнить архив с указанной файловой системой.
- -j : bzip архив
- -r : Добавлять файлы в существующие архивы.
- -t : Список содержимого существующих архивов.
- -u : Обновить архив
- -x : Извлечь файл из существующего архива.
- -z : gzip архив
- -delete : удаление файлов из существующего архива.
Примеры tar
Создание файла архива tar.
# tar -zcvf name_of_tar.tar.gz /path/to/folder
Распаковка файла архива tar.
# tar -zxvf Name_of_tar_file.tar.gz
Для более подробных примеров прочитайте 18 примеров командной строки в Linux .
Команда shar
shar, который обозначает архив Shell — это shell-скрипт, выполнение которого будет создавать файлы. shar — это самораспаковывающийся архивный файл, который является устаревшей утилитой и нуждается в Unix Bourne Shell для извлечения файлов. Преимущество shar состоит в том, что он является простым текстом, однако он потенциально опасен, поскольку он выводит исполняемый файл.
Параметры shar
- -o : сохранить вывод в архивные файлы, как указано, в опции.
- -l : Ограничение размера вывода, как указано в параметре, но без его разделения.
- -L : Ограничение размера вывода, как указано в параметре и разбить его.
- -n : Имя архива, которое должно быть включено в заголовок файлов shar.
- -a : Разрешить автоматическую генерацию заголовков.
Примечание . Параметр «-o» требуется, если используется опция «-l» или «-L», а опция «-n» требуется, если используется опция «-a».
Примеры
Создание файла архива.
# shar file_name.extension > filename.shar
Распаковка файла архива.
# unshar file_name.shar
3. Команда ar
ar — это утилита создания и манипулирования архивами, в основном используемая для библиотек двоичных файлов объектов. ar означает архиватор, который может быть использован для создания любого архива любого рода, но в значительной степени заменен на «tar», и теперь он используется только для создания и обновления файлов статической библиотеки.
Параметры ar
- -d : Удалить модули из архива.
- -m : Переместить элементы в архиве.
- -p : Печать указанных элементов архива.
- -q : Быстрое добавление.
- -r : Вставить члена файла в архив.
- -s : Добавить индекс в архив.
- -a : Добавить новый файл к существующим членам архива.
Примеры
Создайте архив, используя инструмент «ar» со статической библиотекой, скажем, «libmath.a» с объектными файлами «вычитание (substraction)» и «деление (division)».
# ar cr libmath.a substraction.o division.o
Распаковка файла архива ‘ar’.
# ar x libmath.a
4. cpio
cpio означает Копировать в/из (Copy in and out). Cpio — файловый архиватор общего назначения для Linux. Он активно используется диспетчером пакетов RedHat (RPM) и в initramfs ядра Linux, а также важным инструментом архивирования в установщике Apple Computer (pax).
Параметры cpio
- -0 : Прочитать список имен файлов, завершенных нулевым символом вместо новой строки.
- -a : Сбросить время доступа.
- -A : Добавить.
- -b : обмен.
- -d : Создать каталоги.
Примеры cpio
Создание файла архива ‘cpio’.
# cd tecmint # ls file1.o file2.o file3.o # ls | cpio -ov> /path/to/output_folder/obj.cpio
Распаковка файла архива cpio.
# cpio -idv </ path/to_folder/obj.cpio
5. Gzip
gzip — стандартная и широко используемая утилита сжатия и декомпрессии файлов. Gzip разрешает конкатенацию файлов. Сжатие файла с помощью gzip выводит tarball, который находится в формате ‘* .tar.gz ‘ или ‘ * .tgz ‘.
Tarball или tarfile — это имя, которое описывает группу или архив файлов, которые объединены вместе с помощью команды tar и обычно имеют расширение .tar.
Опции gzip
- –stdout : Производить вывод в стандартный вывод.
- –to-stdout : Производить вывод в стандартный вывод.
- -decompress : Декомпрессия файла.
- -uncompress : Декомпрессия файла.
- -d : Декомпрессия файла.
- -f : принудительное сжатие / декомпрессия.
Примеры gzip
Создание файла архива ‘gzip’.
# tar -cvzf name_of_archive.tar.gz / path / to / folder
Распаковка файла архива ‘gzip’.
# gunzip file_name.tar.gz
Вышеупомянутая команда должна быть передана с последующей командой ниже.
# tar -xvf file_name.tar
Примечание. Архитектура и функциональность «gzip» затрудняют восстановление поврежденного файла «gzipped tar archive». Рекомендуется сделать несколько резервных копий важных файлов в разных местах.
Это все на данный момент. Не забудьте предоставить нам свои ценные отзывы в разделе комментариев ниже.