Работа с архивами в Linux

В отличие от стандартных средств Windows, где архивный и сжатый файл по сути одно и тоже. В системе Linux различают архивный файл и сжатый файл.

Архивный файл - это набор файлов и каталогов, помещенных в один файл. Архивный файл по размеру равен сумме размеров всех файлов и каталогов, входящих в него.

Сжатый файл - это набор файлов и каталогов, помещенных в один файл таким образом, что его размер меньше, чем размер файлов и каталогов, входящих в него.

Архивный файл не является сжатым, но сжатый файл может быть архивным.

В командной строке в операционной системе Linux мы можем воспользоваться утилитами gzip и bzip2 для сжатия файлов и утилитой tar для архивирования.

Утилиты gzip и bzip2 умеют сжимать и распаковывать только один файл. Поэтому перед сжатием нескольких файлов предварительно их нужно упаковать в один файл (заархивировать или "затарить") утилитой tar.

Утилита tar сама не создаёт сжатых архивов, а использует для сжатия внешние утилиты, такие как gzip и bzip2, для того чтобы сжать папку с файлами в Linux нам нужен симбиоз программы tar и gzip или tar и bzip2.

Синтаксис утилиты tar:
tar [-ключи] [название архива] [путь для упаковки]

Ключи, используемые с командой tar:

Чтобы создать файл tar:
tar -cvf filename.tar /dir/file
Чтобы распаковать содержимое файла tar:
tar -xvf filename.tar
tar -xvf filename.tar -C /home/path/

Чтобы создать сжатый файл gzip:
tar -czvf filename.tgz /dir/file
Чтобы распаковать содержимое файла gzip tar:
tar -xzvf filename.tgz

Чтобы создать сжатый файл bzip:
tar -cjvf filename.tbz /dir/file
Чтобы распаковать содержимое файла bzip tar:
tar -xjvf filename.tbz

Для файлов, содержащих архивы tar применяются следующие расширения имён файлов:

архив tar:

архив tar, сжатый программой gzip:

архив tar, сжатый программой bzip2:

При копировании или цитировании гиперссылка на http://perviysait.narod.ru/linux_arc.htm как источник обязательна.