Jump to content
TacTics
TacTics

Команда tar: архивация, распаковка и сжатие файлов в Linux

По умолчанию в системах Unix/Linux включен встроенный архиватор tar, позволяющий запаковывать/распаковывать архив и выполнять много других операций с заархивированными файлами. В его функционал не входит компрессия, но он отлично работает с такими утилитами, как Gzip и BZip2 – с помощью них и выполняется сжатие файлов.

В сегодняшней статье мы подробно разберем основные функции команды tar, а также рассмотрим, как работать с архивами в Linux-системе. 

Tar: основные функции и синтаксис

Начнем с синтаксиса – он довольно прост. Если вы когда-либо работали в консольном окне, то вопросов возникнуть не должно. Создание нового архива выполняется следующей строчкой кода:

tar <функции> archive.tar <архивируемые файлы>

 

Распаковка файлов тоже выполняется просто:

tar <функции> <имя архива>

 

Основные опции:

  • -A, --concatenate – позволяет добавить уже существующий архив к другому;
  • -c, --create – создает новый архив и записывает в него файлы;
  • -d – расшифровывается как -diff или -delete, где первая команда проверяет различия между архивами, вторая – удаляет данных из архива;
  • -r, append – добавляет новые файлы в конец заархивированного документа;
  • -t, --list – разрешает посмотреть содержимое архива, формат аналогичен ls –l; если файлы не указаны, то выводит информацию обо всех файлах;
  • -u, --update – обновление файлов в созданном архиве с тем же наименованием;
  • -x, --extract – распаковывает файлы из заархивированного документа.

Мы также можем использовать особые параметры, относящиеся к каждой опции:

  • -c dir, --directory=DIR – перед тем как выполнить операцию, директория будет изменена на dir;
  • -f file, --file – выводит результат в file;
  • -p, --bzip2 – сохраняет все права доступа;
  • -v – расшифровывается как -verbose или -totals: выводит всю информацию о текущем процессе и показывает сведения об уже завершенном процессе.

Как мы говорили ранее, tar также хорошо взаимодействует с утилитами сжатия. Для их использования предназначены отдельные опции:

  • -a, -auto-compress – выбирает программу для сжатия данных;
  • -I, -use-compress-program=PROG – позволяет фильтровать архив с помощью утилиты PROG, для которой требуется использование опции -d;
  • -j, -bzip2 – сжимает архив с помощью программы bzip2;
  • -J, -xz – сжимает архив с помощью программы XZ;
  • -Izip – сжимает архив с помощью программы Lzip;
  • -Izma – сжимает архив с помощью программы Izma;
  • -z, -gzip, -gunzip, -ungzip – сжимает архив с помощью программы GZIP;
  • -Z, -compress, -uncompress – использование компрессии.

У команды tar есть еще много возможностей – чтобы их посмотреть, достаточно в консольном окне ввести команду tar --help. О том, как воспользоваться наиболее важными опциями и поработать с архивацией данных, мы поговорим в следующем разделе.

Как воспользоваться архиватором tar

Для работы с архиватором будем использовать сборку Kali Linux. Данный алгоритм подойдет и для других версий Unix/Linux, поэтому можете просто следовать инструкциям, чтобы прийти к тому же результату.

Создать новый архив или распаковать уже созданный мы можем двумя путями: воспользоваться необходимыми командами через консоль либо использовать встроенный архиватор ручным способом. Давайте рассмотрим оба варианта и посмотрим, как с их помощью можно создать новый архив, посмотреть его содержимое, распаковать данные и провести их сжатие.

Архивируем файлы

Чтобы добавить один или несколько файлов в архив через консольное окно, нам потребуется сначала прописать пути, чтобы система понимала, откуда брать файлы. Сделать это довольно просто: указываем в консоли путь до директории, в которой находятся файлы. В нашем случае это /home/kali/.

 

138.png

 

Для архивации вводим команду типа:

tar -cf <наименование будущего архива с расширением .tar> <имя архивируемого файла>

 

 

226.png

 

В результате будет создан архив в исходной папке – перейдем в нее и убедимся, что все прошло корректно:

 

317.png

 

Второй способ – ручное архивирование. Для этого выбираем файл, который нужно заархивировать, и кликаем по нему правой кнопкой мыши. В отобразившемся меню нажимаем на функцию создания архива. Далее нам потребуется указать название файла, задать ему расширение .tar и воспользоваться кнопкой архивирования файлов.

 

415.png

 

 

Как видите, создать tar-архив в Linux совсем не сложно. Если вам нужно заархивировать несколько документов через консоль, то просто пропишите их имена с использованием пробела.

Распаковываем tar-файлы

В данном случае нам также потребуется в консольном окне перейти в нужную директорию. Как только пути будут прописаны, можно вводить команду для разархивации:

tar -xvf archive.tar

 

517.png

 

Таким образом будут получены файлы, находящиеся в архиве. Также мы можем их достать и ручным способом – для этого достаточно кликнуть правой кнопкой мыши по файлу и нажать на «Извлечь здесь».

Как работать со сжатием файлов

Напоминаю, что tar не сжимает файлы, а только добавляет их в архив. Для уменьшения размера архивируемых файлов потребуется дополнительно воспользоваться такими утилитами, как bzip2 и gzip. Они хорошо взаимодействуют с tar, поэтому в консольном окне достаточно прописать несколько новых значений. В ручном режиме сжатие файлов выполняется с помощью расширения .tar.bz2 или .tar.gz.

Итак, для сжатия в bzip2 переходим через консоль в нужную директорию и прописываем следующую команду:

tar -cjvf <название нового архива с расширением .tar.bz2> <наименование файла/файлов>

 

613.png

 

 

Чтобы использовать gzip, другую утилиту для сжатия, вводим следующее:

tar -czvf <название нового архива с расширением .tar.gz> <наименование файла/файлов>

 

711.png

 

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

tar -xjvf <наименование архива в формате .tar.bz2> 

Или:

tar -xzvf <наименование архива в формате .tar.gz>

Ручной способ аналогичен созданию обычного архива, только необходимо указать расширение .tar.bz2 либо .tar.gz.

 

810.png

 

Распаковать файлы самостоятельно тоже просто – для этого нужно кликнуть правой кнопкой по архиву и выбрать «Извлечь здесь».

Как посмотреть содержимое архива

Мы можем посмотреть, что находится в архиве без его распаковки. В консоли для этого необходимо ввести команду такого типа:

tar -tf <название архива>

 

98.png

 

Обратите внимание, что под командой отобразилось название «document1» – это файл, находящийся в архиве. Если файлов несколько, то каждый будет прописан в новой строке.

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

Заключение

Сегодня мы рассмотрели основные методы архивации, распаковки и сжатия файлов с помощью команды tar. Это простой инструмент, который отлично взаимодействует с утилитами сжатия bzip2 и gzip. Надеюсь, что теперь вам будет легко работать с архивами в системе Linux. Спасибо за внимание!

  • Like 1


User Feedback

Recommended Comments

А как мне это сделать на Винде10?

Share this comment


Link to comment
Share on other sites
12 часов назад, AnWey сказал:

А как мне это сделать на Винде10?

 

Через файловый архив 7z

  • Like 1

Share this comment


Link to comment
Share on other sites

Можете сделать новость об этом или скрини? я делал через 7z но пишет что файл поврежден при установки в IPS

Share this comment


Link to comment
Share on other sites

@AnWey архивировать нужно не папку, а файлы внутри папки.

Share this comment


Link to comment
Share on other sites


Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

Privacy Policy We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.