Logiss.ru

Ваша компьютерная помощь
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Как распаковать TAR.BZ2 в Linux

Использование tar в Linux и FreeBSD для работы с архивами

Утилита командной строки tar используется для работы с архивами в операционных системах на базе UNIX. С ее помощью можно архивировать данные и оптимизировать использование дискового пространства.

Создание и распаковка архивов

Создать

Создание выполняется с ключом c. Синтаксис следующий:

tar -c<опции> <новый архивный файл> <что сжимаем>

tar -czvf archive.tar.gz /home/dmosk

* в данном примере будет создан архив archive.tar.gz домашней директории пользователя (/home/dmosk)
** где z — сжать архив в gzip (без этого параметра, tar не сжимает, а создает так называемый тарбол); c — ключ на создание архива; v — verbose режим, то есть с выводом на экран процесса (очень удобно для наблюдением за ходом работы, но в скриптах можно упустить); f — использовать файл (обязательно указываем, так как в большей степени работаем именно с файлами).

Распаковать

Распаковка выполняется с ключом x с синтаксисом:

tar -x<опции> <архивный файл>

tar -xvf archive.tar.gz

Примеры

Распаковка .gz файла:

tar -xvf archive.tar.gz

* при возникновении ошибки This does not look like a tar archive, можно воспользоваться командой gzip -d archive.tar.gz.

tar -xvjf archive.tar.bz2

* ключ j отвечает за работу с bz2.

Если система ругается на bzip2, значит нужно его установить:

yum install bzip2

apt-get install bzip2

pkg install bzip2

* соответственно, для CentOS (RPM based), Ubuntu (deb based), FreeBSD (BSD based).

Если видим ошибку tar: Unrecognized archive format, воспользуемся следующей командой:

bzip2 -d archive.tar.bz2

tar -xvzf archive.tar.gzip

* ключ z отвечает за работу с gzip.

Распаковывается, как gzip:

tar -xvzf archive.tgz

Распаковать в определенную папку

tar -C /home/user -xvf archive.tar.gz

* ключ -C используется для указания папки, куда необходимо распаковать файлы из архива.

Распаковка без вложенной папки

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

tar -C /home/admin/mytar -xvf admin.tar.gz —strip-components 1

* каталог /home/admin/mytar заранее должен быть создан; —strip-components 1 пропустит одну вложенную папку внутри архива.

Исключение файлов по маске

Если необходимо пропустить некоторые файлы, вводим команду с ключом —exclude:

tar —exclude='sess_*' -czvf archive.tar.gz /wwwsite

* в данном примере мы создадим архив archive.tar.gz, в котором не будет файлов, начинающихся на sess_.

Также можно исключить несколько файлов или папок, добавляя несколько опций exclude:

tar —exclude='/data/recycle' —exclude='*.tmp' zcf /backup/samba/2021-08-29.tar.gz /data/

* в данном примере мы исключим папку recycle и файлы, которые заканчиваются на .tmp

Работа с архивами, разбитыми на части

Разбить архив на части может понадобиться по разным причинам — нехватка места на носителе, необходимость отправки файлов по почте и так далее.

Чтобы создать архив, разбитый на части, вводим команду:

tar -zcvf — /root | split -b 100M — root_home.tar.gz

* данная команда создаст архив каталога /root и разобьет его на части по 100 Мб.

В итоге мы получим, примерно, такую картину:

root_home.tar.gzaa root_home.tar.gzac root_home.tar.gzae
root_home.tar.gzag root_home.tar.gzai root_home.tar.gzab
root_home.tar.gzad root_home.tar.gzaf root_home.tar.gzah

Чтобы собрать архив и восстановить его, вводим команду:

cat root_home.tar.gz* | tar -zxv

Описание ключей tar

Команды для действия

КлючОписание
-AДобавление файлов в архив.
-cСоздание нового архивного файла.
-dПоказать отличающиеся данные между каталогом-исходником и содержимым архива.
—deleteУдалить файлы внутри архива.
-rДобавить файлы в конец архива.
-tПоказать содержимое архива.
-uДобавить файлы, которых нет в архиве.
-xИзвлечь файлы из архива.

* нельзя использовать несколько вышеперечисленных ключей в одной команде.

Дополнительные опции

КлючОписание
—atime-preserveОставить прежнюю метку времени доступа для файла.
-b NЗадать размер блока N x 512.
-CСмена каталога. По умолчанию, используется тот, в котором мы находимся.
—checkpointПоказать имена папок при чтении архивного файла.
-GИспользование старого формата инкрементального резервирования при отображении или извлечения.
-gИспользование нового формата инкрементального резервирования при отображении или извлечения.
-hНе дублировать символьные ссылки. Только файлы, на которые указывают эти симлинки.
-iИгнорировать блоки нулей.
-jИспользование bzip2.
—ignore-failed-readИгнорировать не читаемые файлы.
-kПри распаковке, существующие файлы не заменяются соответствующими файлами из архива.
-L NСмена магнитной ленты после N*1024 байт.
-mПри извлечении игнорировать время модификации объекта.
-MМноготомные архивы.
-N DATEСохранять только более новые файлы относительно DATE
-OНаправление извлекаемого на стандартный вывод.
-pИзвлечение защищенной информации.
-PНе отбрасывает начальный слэш (/) из имен.
-sСортировка файлов при извлечении.
—preserveАналогично -ps
—remove-filesУдалить исходные файлы после добавления в архив.
—same-ownerСохранить владельца при извлечении.
—totalsВывод байт при создании архива.
-vПротоколирование действий — отображение списка объектов, над которыми происходит действие.
-V NAMEСоздание архива на томе с меткой NAME.
—versionПоказать версию tar.
-wТребовать подтверждения для каждого действия.
-WПроверка архива после записи.
—exclude FILEИсключить файл FILE.
-X FILEИсключить файлы FILE.
-ZФильтрует архив с помощью compress.
-zИспользование gzip.

* актуальный список опций можно получить командой man tar.

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

yum install zip unzip

apt-get install zip unzip

pkg install zip unzip

* соответственно, для RPM based, deb based, BSD based.

zip -r archive.zip /home/dmosk

* создает архив каталога /home/dmosk в файл archive.zip.

Windows

В системе на базе Windows встроенными средствами можно распаковать только ZIP-архивы. Для работы с разными архивами рекомендуется поставить архиватор, например 7-Zip.

Как распаковать (разархивировать) файл Tar Bz2

Команда tar позволяет создавать и извлекать архивы tar. Он поддерживает широкий спектр программ сжатия, таких как gzip, bzip2, lzip, lzma, lzop, xz и compress.

Bzip2 — один из самых популярных алгоритмов сжатия файлов tar. По соглашению, имя tar-архива, сжатого с помощью bzip2, оканчивается на .tar.bz2 или .tbz2 .

В этом руководстве мы объясним, как распаковать (или разархивировать) архивы tar.bz2 и tbz2 с помощью команды tar .

Извлечение файла tar.bz2

В большинстве дистрибутивов Linux и macOS по умолчанию предустановлена утилита tar .

Чтобы извлечь файл tar.bz2, используйте параметр —extract ( -x ) и укажите имя файла архива после параметра -f :

Команда tar автоматически определяет тип сжатия и извлекает архив. Эту же команду можно использовать для извлечения архивов tar, сжатых с помощью других алгоритмов, таких как .tar.gz или .tar.xz .

Если вы пользователь рабочего стола и командная строка вам не подходит, вы можете использовать файловый менеджер. Чтобы распаковать (разархивировать) файл tar.bz2, просто щелкните правой кнопкой мыши файл, который вы хотите распаковать, и выберите «Извлечь». Пользователям Windows потребуется инструмент под названием 7zip для извлечения файлов tar.bz2.

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

По умолчанию tar извлекает содержимое архива в текущий рабочий каталог . Используйте —directory ( -C ) для извлечения архивных файлов в определенный каталог:

Например, чтобы извлечь содержимое архива в /home/linuxize/files , введите:

Извлечение определенных файлов из файла tar.bz2

Чтобы извлечь определенный файл (ы) из файла tar.bz2, добавьте разделенный пробелами список имен файлов, которые нужно извлечь, после имени архива:

При извлечении файлов вы должны —list их точные имена, включая путь, как напечатано при использовании —list ( -t ).

Извлечение одного или нескольких каталогов из архива аналогично извлечению нескольких файлов:

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

Параметр —wildcards позволяет извлекать файлы из файла tar.bz2 на основе шаблона подстановки. Шаблон должен быть заключен в кавычки, чтобы оболочка не могла его интерпретировать.

Например, чтобы извлечь только файлы, имена которых заканчиваются на .md (файлы Markdown), вы должны использовать:

Извлечение файла tar.bz2 из стандартного ввода-вывода

При извлечении сжатого файла tar.bz2 путем чтения архива со стандартного ввода (обычно через конвейер) вы должны указать параметр распаковки. Параметр -j сообщает tar что файл сжат с помощью bzip2.

В приведенном ниже примере мы загружаем исходники Vim с помощью команды wget и перенаправляем их вывод в команду tar :

Если вы не укажете вариант декомпрессии, tar покажет вам, какой вариант вам следует использовать:

Листинг файла tar.bz2

Чтобы —list список содержимого файла tar.bz2, используйте параметр —list ( -t ):

Результат будет выглядеть примерно так:

Если вы добавите параметр —verbose ( -v ), tar выведет дополнительную информацию, такую как владелец, размер файла, временная метка и т. Д.

Команда tar и zip в Linux

tar linux

Ubuntu

Нет ничего лучше для запоминания информации, чем чтение, а потом написание этой информации в тетрадь, вот и я люблю прочитать и записать информацию в свою тетрадь nibbl.ru

Сегодня речь пойдет о такой вещи как архивация, а именно упаковка и распаковка таких форматов как: tar, gzip, zip и rar в в операционных системах Unix и Linux

нашу статью разобьем на разделы, что бы была удобная навигация.

Архивация в Linux

linux tar распаковать запаковатьLinux или Линукс сейчас самая популярная система не только для системный администраторов, но уже и для большинства рядовых граждан, а причина банальна — уход от Микрософта на государственном уровне и повсеместное внедрение «свободного ПО российской разработки», но как бы не называли ее мы все понимаем, что единственное свободное ПО которое может заменить для рядового пользователя операционную систему для работы в офисе это семейство Линуксовых. Поэтому как говорится уже можно начинать ее изучать всем повсеместно)))) но давайте не уходить от темы, а вернемся к нашим баранам!

Хоть Linux и имеет графическую оболочку и даже уже можно скачать графические пакеты для работы с самыми популярными расширениями архиваторов, мы будем рассматривать работу с архивами на уровне консоли (но если кому надо сделаем обзор пакетов для работы не через консоль)

Архивация Tar в Linux

Tar — или как мы его называли архиватором таковым не является, причина тому, логика работы данного инструмента! это всего лишь упаковщик, а если быть точнее то задача tar создать контейнер в формате tar в который она помещает выбранные вами файлы (без сжатия). Но если Вам нужно эти данные ужать или сжать для уменьшения размера архива, тогда применяются дополнительные инструменты такие как Gzip или bzip2 (вы должны были обращать внимания, что скачивая пакеты или файлы они имели странный формат name-file.tar.gz ) Все дело в том, что принцип работы инструмента по сжатию данных, работает только в однопотоковом режиме, поэтому, что бы заархивировать много файлов и их сжать нам необходимо было их упаковать в TAR (один файл), а только потом прогнать через сжатие Gzip или bzip2 поэтому эти инструменты работают как Бонни и Клайд)

Создание архива TAR

Для начала начнем с запаковки архива Tar в Linux/ubuntu, и для этого надо запомнить шаблон или синтаксис команды:

tar [опции] <имя файла.tar> [файлы или папки которые будем упаковывать]

Опции для создания архива tar:

  • c (create) — создать архив
  • f (file) — указать имя архива
  • j (bzip2) — cжать/распаковать архив дополнительно при помощи bzip2
  • z (gzip) — сжать/распаковать архив дополнительно при помощи gzip
  • v (verbose) — выводит список прогресса

Для создания архива tar нам необходимы только две опции c и f, но если вы хотите видеть процесс упаковки файлов, то можете добавить ключ v и тогда вы увидите на экране бегущий список файлов (так сказать «аналог» виндовому прогрессу в виде процентов)

tar -cvf newfile.tar /foto

в данной команде мы указали создать архив newfile.tar и запаковать всю папку foto

В списке опций вы заметили два ключа j и z эти ключи используются как для сжатия в архив gzip или bzip2 если вам нужно сделать архивацию с сжатием то применяем следующую команду:

tar -cvjf newfile.tar /foto — создаст архив + сжатие newfile.tar.bz2
tar -cvzf newfile.tar /foto — создаст архив + сжатие newfile.tar.gz

Распаковать архив TAR

рассмотрим синтаксис команды что бы распаковать или разархивировать tar архив в linux/ubunta :

tar [опции] <имя файла.tar> [файлы или папки которые будем распаковывать]

Опции для создания архива tar:

  • x (extract) — извлечь файлы из архива
  • f (file) — указать имя архива
  • j (bzip2) — cжать/распаковать архив дополнительно при помощи bzip2
  • z (gzip) — сжать/распаковать архив дополнительно при помощи gzip
  • v (verbose) — выводит список прогресса
  • С (в верхнем регистре) — указываем альтернативное место для разархивирования файлов

tar -xvjf newfile.tar.bz2 — распаковываем архив в категорию в которой находимся
tar -xvzf newfile.tar.gz -C /home/nibbl/desktop — распаковываем архив на рабочий стол

Общая информация по работе с Tar

  1. tar —help — вызов справки по командам и параметрам
  2. man tar — вызов расширенной документации
  3. официальная документация по команде tar — ссылка

Архивация Zip в Linux

Архиватор zip — это звезда в мире ПО (ну не считая rar) этот формат очень популярен для windows систем и он по умолчанию уже встроен в чистую сборку операционной системы, поэтому только установив виндовус вы уже можете разархивировать файлы в формате zip

но давайте перейдем к делу, в Linux и Unix системах дела обстоят по другому, это формат Tar идет по умолчанию, а вот для zip надо поставить пакет unzip

  1. sudo apt-get update && apt-get upgrade
  2. sudo apt-get install unzip

Создание ZIP архива

Для начала запомним шаблон или синтаксис команды для создания архива zip в linux:

zip [опции] <имя файла.zip> [файлы или папки которые будем упаковывать]

Опции для создания архива tar:

  • r (recurse) — рекурсивное создание архива
  • s (size) — разбивка архива на определенный размер k (kB), m (MB), g (GB) или t (TB)
    пример: zip -s 300m <файл 1 ГБ>
    на выходе получим:
    file.zip (300 mb, master file)
    file.001.zip (300 mb)
    file.002.zip (300 mb)
    file.003.zip (100 mb)
  • P (password) — запаролировать архив (можно использовать ключ e тогда пароль будете вводить в отдельной строке со звездочками )
    пример: zip -P мойпароль -r file.zip ./home/nibbl/foto
    пример2: zip -er file.zip ./home/nibbl/foto
  • x — исключаем файлы или каталоги из архива
  • 1-9 — степень сжатия (где 1 без сжатия, а 9 лучшее сжатие)

zip –r -9 -P 123 — archive.zip /home/nibbl/desktop/myfile

— данной командой мы заархивировали с сжатием папку myfile создали архив с именем archive.zip и установили пароль на архив 123

Распаковать zip архив

рассмотрим синтаксис команды что бы распаковать или разархивировать tar архив :

Опции для создания архива tar:

  • d (directory) — указать директорию для разархивации
  • l — вывести список файлов в архиве
  • d — удалить определенный файл или каталог из уже сделанного архива
  • v — показывает детальную информацию по файлам в архиве ()

unzip <имя файла.zip> — распаковываем архив в категорию в которой находимся
unzip <имя файла.zip> -d /home/nibbl/desktop — распаковываем архив на рабочий стол

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

Команда tar и другие методы распаковки в Linux

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

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

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/.

Как сменить директорию в консоли Kali Linux

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

Как заархивировать файл в Kali Linux

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

Как архивировать файлы через консоль в Linux

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

Как создать архив tar в Linux Kali

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

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

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

Как разархивировать файл в консоли линукса

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

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

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

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

Как сжать файлы в Linux Kali

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

Как создать сжатый архив в Linux Kali

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

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

Как создать сжатый архив в Linux Kali

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

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

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

Как посмотреть содержимое архива через консоль в Linux Kali

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

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

Заключение

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

Читайте так же:
Программы для изменения голоса в Скайпе
Ссылка на основную публикацию
Adblock
detector