Linux. Архиваторы. Создание и распаковка архивов в Linux

03.06.2018 Софт


Tar

tar - наиболее распространенный архиватор, используемый в Linux-системах. Сам по себе tar не является архиватором в привычном понимании этого слова, т.к. он самостоятельно не использует сжатие. В то же время, многие архиваторы (например, Gzip или bzip2) не умеют сжимать несколько файлов, а работают только с одним файлом или входным потоком. Поэтому чаще всего эти программы используются вместе. tar создает несжатый архив, в который помещаются выбранные файлы и каталоги, при этом сохраняя некоторые их атрибуты (такие как права доступа). После этого полученный файл *.tar сжимается архиватором, например, gzip. Вот почему архивы обычно имеют расширение .tar.gz или .tar.bz2 (для архиваторов gzip и bzip2 соответственно)

Опции tar:

c — создание нового архива (сокращение от create)
v — выдача дополнительных сообщений в процессе работы программы (сокращение от verbose)
f — создание файла на диске.
z — использовать для сжатия GZip
j — использовать для сжатия BZip2
x — распаковать архив

Примеры использования :

Создание:

Данная команда создаст архив с именем archive.tar, вложив в него содержимое папки ./log.

tar -cf archive.tar ./log/

Так же можно передавать маску файлов, например такая команда:

tar -cf logs.tar ./log/*.log

Что бы создать архив с помощью gzip нужно указать опцию -z

tar -czf logs.tar.gz ./log/

Распаковка:

Для распаковки архива Tar необходимо воспользоваться ключом -x:

tar -xf logs.tar.gz

При распаковке уже можно не указывать, какой метод сжатия использовался.

Просмотр содержимого архива:

Для просмотра содержимого архивов можно использовать ключ -t:

tar -tf logs.tar.gz

Zip

Кроссплатформенная утилита для создания сжатых архивов формата zip. Совместимая с Windows реализациями этого алгоритма. Zip архивы очень часто используются для обмена файлами в интернете. С помощью этой утилиты можно сжимать как файлы, так и сжать папку linux.

Опции zip:

r — рекурсивно обходить каталоги
0-9 — 0 только архивировать, без сжатия, 9 наилучший степень сжатия
e — шифровать файлы
x — "/var/log/apt/*" - опция, позволяющая исключить указанную папку или файл из архива

Примеры использования :

Создание:

Чтобы сжать файл с помощью zip, введите:

zip -r logs.zip ./log/

Распаковка:

Для того, чтобы распаковать архив zip, необходимо выполнить команду:

unzip logs.zip

Если необходимо распаковать в конкретную папку, то для этого используется параметр –d. Например:

unzip logs.zip -d /tmp

Просмотр содержимого архива:

Для просмотра содержимого архивов можно использовать ключ -l:

unzip archive -l

 

Еще по теме

Онлайн справочник по командам linux с примерами

Так же вы можете прочитать более подробнее об файловых командах Linux тут.