Как распаковать файлы tar.gz в Linux

tar.gz, также известный как tgz, - это формат файлов, используемый для архивов, сжатых с помощью gzip. Он популярен в среде Linux для распространения файлов, поскольку предлагает хороший баланс между эффективностью сжатия и скоростью.

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

Шаги по открытию сжатого gzip-архива tar в Linux:

Откройте приложение терминала.

Проверьте, является ли файл действительным gzip-архивом (необязательно).

Создайте папку, в которую вы хотите распаковать файл (необязательно).

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

Распакуйте файл с помощью команды tar.

Просмотрите содержимое распакованного файла.

Опции для tar.

Выбор локального имени файла

  • --add-file=FILE добавить заданный ФАЙЛ в архив (полезно, если его имя начинается с тире)
  • -C, --directory=DIR переход в каталог DIR
  • --exclude=PATTERN исключить файлы, заданные в виде PATTERN
  • --exclude-backups исключить резервные копии и файлы блокировки
  • --exclude-caches исключить содержимое каталогов, содержащих CACHEDIR.TAG, за исключением самого файла тега
  • --exclude-caches-all исключить каталоги, содержащие CACHEDIR.TAG
  • --exclude-caches-under исключить все, что находится под каталогами, содержащими CACHEDIR.TAG
  • --exclude-ignore=FILE читать шаблоны исключения для каждой директории из FILE, если он существует
  • --exclude-ignore-recursive=FILE считывание шаблонов исключения для каждого каталога и его подкаталогов из ФАЙЛА, если он существует
  • --exclude-tag=FILE исключить содержимое каталогов, содержащих FILE, за исключением самого FILE
  • --exclude-tag-all=FILE исключить каталоги, содержащие FILE
  • --exclude-tag-under=FILE исключить все, что находится под каталогами содержащих ФАЙЛ
  • --exclude-vcs исключить каталоги системы контроля версий
  • --exclude-vcs-ignores чтение шаблонов исключения из файлов игнорирования VCS
  • --no-null отключает эффект предыдущей опции --null
  • --no-recursion избежать автоматического спуска в каталогах
  • --no-unquote не раскрывать кавычки в именах входных файлов и членов
  • --no-verbatim-files-from -T рассматривает имена файлов, начинающиеся с тире, как опции (по умолчанию)
  • --null -T считывает нуль-терминированные имена; подразумевает.
  • --recursion - рекурсия в каталоги (по умолчанию)
  • -T, --files-from=FILE получить имена для извлечения или создания из FILE
  • --unquote раскрыть кавычки в именах входных файлов или членов (по умолчанию)
  • --verbatim-files-from -T читает имена файлов дословно (без экранирования или обработки опций)
  • -X, --exclude-from=FILE исключение шаблонов, перечисленных в FILE

Опции сопоставления имен файлов (влияют как на исключающие, так и на включающие шаблоны)

  • --anchored patterns соответствовать началу имени файла
  • --ignore-case игнорировать регистр
  • --no-anchored шаблоны совпадают после любого '/' (по умолчанию для исключения)
  • --no-ignore-case сопоставление с учетом регистра (по умолчанию)
  • --no-wildcards дословное сопоставление строк
  • --no-wildcards-match-slash подстановочные знаки не совпадают с '/'
  • --wildcards использовать подстановочные знаки (по умолчанию для исключения)
  • --wildcards-match-slash подстановочные знаки совпадают с '/' (по умолчанию для исключения)

Основной режим работы

  • -A, --catenate, --concatenate добавление tar-файлов в архив
  • -c, --create создать новый архив
  • -d, --diff, --compare найти различия между архивом и файловой системой
  • --delete удалить из архива (не на магнитных лентах!)
  • -r, -append добавить файлы в конец архива
  • -t, --list перечислить содержимое архива
  • --test-label проверить метку тома архива и выйти
  • -u, --update добавлять только файлы, более новые, чем копия в архиве
  • -x, --extract, --get извлечь файлы из архива

Модификаторы операций

  • --check-device проверка номеров устройств при создании инкрементных архивов (по умолчанию)
  • -g, --listed-incremental=FILE обрабатывать новые инкрементные резервные копии в формате GNU
  • -G, --incremental обрабатывать старые инкрементные резервные копии формата GNU
  • --hole-detection=TYPE техника обнаружения дыр
  • --ignore-failed-read не выходить с ненулевым значением для нечитаемых файлов
  • --level=NUMBER уровень дампа для созданного инкрементального архива с листингом
  • -n, --seek архив доступен для поиска
  • --no-check-device не проверять номера устройств при создании инкрементных архивов
  • --no-seek архив не является искомым
  • --occurrence[=NUMBER] обрабатывать только НОМЕРНОЕ вхождение каждого файла в архиве; эта опция действительна только в в сочетании с одной из подкоманд --delete, --diff, --extract или --list и когда список файлов указан либо в командной строке, либо через -T; по умолчанию ЧИСЛО равно 1
  • --sparse-version=MAJOR[.MINOR]
  • устанавливает версию используемого формата разрежения (подразумевает --sparse)
  • -S, --sparse эффективно обрабатывает разреженные файлы

Контроль перезаписи

  • -k, --keep-old-files не заменяют существующие файлы при извлечении, рассматривать их как ошибки
  • --keep-directory-symlink сохранять существующие симлинки на каталоги при извлечении
  • --keep-newer-files не заменять существующие файлы, которые новее, чем их архивных копий
  • --no-overwrite-dir сохранять метаданные существующих каталогов
  • --one-top-level[=DIR] создать подкаталог, чтобы избежать потери файлов извлеченные
  • --overwrite перезаписывать существующие файлы при извлечении
  • --overwrite-dir перезаписывать метаданные существующих каталогов при извлечении (по умолчанию)
  • --recursive-unlink пустые иерархии перед извлечением каталога
  • --remove-files удалять файлы после добавления их в архив
  • --skip-old-files не заменять существующие файлы при извлечении, молча пропускать их
  • -U, --unlink- сначала удалять каждый файл перед извлечением поверх него
  • -W, --verify попытка проверки архива после его записи

Выбрать выходной поток

  • --ignore-command-error игнорировать коды выхода дочерних команд.
  • --no-ignore-command-error рассматривать ненулевые коды выхода дочерних команд как ошибку
  • -O, --to-stdout извлечь файлы в стандартный вывод
  • --to-command=COMMAND передавать извлеченные файлы в другую программу

Обработка атрибутов файлов

  • --atime-preserve[=METHOD] сохранять время доступа к файлам дампа, либо восстанавливая время после чтения (METHOD='replace'; по умолчанию), либо не устанавливая времени вообще (METHOD='system')
  • --clamp-mtime устанавливает время только в том случае, если файл более поздний, чем того, которое было задано с помощью параметра --mtime
  • --delay-directory-restore-откладывать установку времени модификации и разрешения извлеченных каталогов до конца извлечения
  • --group=NAME заставляет использовать NAME в качестве группы для добавленных файлов
  • --group-map=FILE использовать FILE для сопоставления GID и имен владельцев файлов
  • --mode=CHANGES принудительно установить (символический) режим CHANGES для добавленных файлов
  • --mtime=DATE-OR-FILE установить mtime для добавленных файлов от DATE-OR-FILE
  • -m, --touch не извлекать время изменения файла
  • -no-delay-directory-restore отменить действие опции --delay-directory-restore
  • --no-same-owner извлекать файлы под своим именем (по умолчанию для обычных пользователей)
  • --no-same-permissions применять umask пользователя при извлечении разрешений из архива (по умолчанию для обычных пользователей)
  • --numeric-owner всегда использовать цифры для имен пользователей/групп
  • --owner=NAME заставляет NAME быть владельцем для добавленных файлов
  • --owner-map=FILE использовать FILE для сопоставления UID и имен владельцев файлов
  • -p, --preserve-permissions, --same-permissions извлекать информацию о разрешениях на файлы (по умолчанию для суперпользователя)
  • --same-owner попытаться извлечь файлы с тем же владельцем, что существует в архиве (по умолчанию для суперпользователя)
  • -s, --preserve-order, --same-order аргументы членов перечисляются в том же порядке, что и файлы в архиве
  • --sort=ORDER порядок сортировки каталогов: нет (по умолчанию), по имени или inode

Обработка расширенных атрибутов файлов

  • --acls Включить поддержку POSIX ACLs
  • --no-acls Отключить поддержку POSIX ACLs
  • --no-selinux Отключить поддержку контекста SELinux
  • --no-xattrs Отключить поддержку расширенных атрибутов
  • ---selinux Включить поддержку контекста SELinux
  • --xattrs Включить поддержку расширенных атрибутов
  • --xattrs-exclude=MASK указать шаблон исключения для ключей xattr
  • --xattrs-include=MASK указать шаблон включения для ключей xattr

Выбор и переключение устройств

  • -f, --file=ARCHIVE использовать архивный файл или устройство ARCHIVE
  • --force-local архивный файл будет локальным, даже если в нем есть двоеточие
  • -F, --info-script=NAME, --new-volume-script=NAME запускать скрипт в конце каждой ленты (подразумевает -M)
  • -L, --tape-length=NUMBER сменить ленту после записи NUMBER x 1024 байт
  • -M, --multi-volume создание/списка/извлечение многотомного архива
  • --rmt-command=COMMAND использовать заданную rmt COMMAND вместо rmt
  • --rsh-command=COMMAND использовать удаленную КОМАНДУ вместо rsh
  • --volno-file=FILE использовать/обновить номер тома в FILE

Блокировка устройства

  • -b, --blocking-factor=BLOCKS BLOCKS x 512 байт на запись
  • -B, --read-full-records блокировать по мере чтения (для 4.2BSD)
  • -i, --ignore-zeros игнорировать обнуленные блоки в архиве (означает EOF)
  • --record-size=NUMBER ЧИСЛО байт на запись, кратное 512

Выбор формата архива

-H, --format=FORMAT создать архив заданного формата.

FORMAT - это один из следующих форматов:

  • gnu Формат GNU tar 1.13.x
  • oldgnu GNU формат согласно tar <= 1.12
  • pax Формат POSIX 1003.1-2001 (pax)
  • posix то же, что и pax
  • ustar Формат POSIX 1003.1-1988 (ustar)
  • v7 старый формат V7 tar

Опции сжатия

  • -a, --auto-compress использовать суффикс архива для определения сжатия
  • -I, --use-compress-program=PROG фильтровать через PROG (должно быть принято -d)
  • -j, ---bzip2 фильтровать архив через bzip2
  • -J, --xz фильтровать архив через xz
  • --lzip фильтровать архив через lzip
  • --lzma фильтровать архив через xz
  • --lzop фильтровать архив через lzop
  • --no-auto-compress не использовать суффикс архива для определения программа сжатия
  • -z, --gzip, --gunzip, --ungzip фильтровать архив через gzip
  • --zstd фильтровать архив через zstd
  • -Z, --compress, --uncompress фильтровать архив через compress

Выбор локального файла

  • --backup[=CONTROL] резервное копирование перед удалением, выбор версии CONTROL
  • -h, --dereference следовать симлинкам; архивировать и выгружать файлы, на которые они на которые они указывают
  • --hard-dereference следовать жестким ссылкам; архивировать и сбрасывать файлы, на которые они указывают ссылаются
  • -K, --starting-file=MEMBER-NAME начинать с члена MEMBER-NAME при чтении файла архива
  • --newer-mtime=DATE сравнивать только дату и время изменения данных
  • -N, --newer=DATE-OR-FILE, --after-date=DATE-OR-FILE хранить только файлы, более новые, чем DATE-OR-FILE
  • --one-file-system оставаться в локальной файловой системе при создании архива
  • -P, --absolute-names не удалять ведущие '/' из имен файлов
  • --suffix=STRING резервное копирование перед удалением, отменяет обычный суффикс ('~' если он не переопределен переменной окружения SIMPLE_BACKUP_SUFFIX)

Преобразования имени файла

  • --strip-components=NUMBER удаляет из имен файлов ведущие компоненты NUMBER имена при извлечении
  • --transform=EXPRESSION, --xform=EXPRESSION использовать sed-замену EXPRESSION для преобразования имен файлов
    имена

Информативный вывод

  • --checkpoint[=NUMBER] выводить сообщения о ходе выполнения каждые NUMBER-ые записи (по умолчанию 10)
  • --checkpoint-action=ACTION выполнить ACTION на каждой контрольной точке
  • --full-time вывести время файла в полном разрешении
  • --index-file=FILE отправлять подробный вывод в FILE
  • -l, --check-links вывести сообщение, если не все ссылки выведены в дамп
  • --no-quote-chars=STRING отключить кавычки для символов из STRING
  • --quote-chars=STRING дополнительно заключать в кавычки символы из STRING
  • --quoting-style=STYLE установить стиль цитирования имени; см. ниже допустимые значения STYLE  значения
  • -R, --block-number показывать номер блока в архиве с каждым сообщением
  • --show-defaults показать настройки tar по умолчанию
  • --show-omitted-dirs при листинге или извлечении выводить список каждого каталога который не соответствует критериям поиска
  • --show-snapshot-field-ranges показать допустимые диапазоны для полей snapshot-файла
  • --show-transformed-names, --show-stored-names показать имена файлов или архивов после преобразования
  • --utc вывести время модификации файла в UTC
  • -v, --verbose выводит подробный список обработанных файлов
  • --warning=KEYWORD управление предупреждением
  • -w, --interactive, --confirmation запрашивать подтверждение для каждого действия

Другие опции

  • -?, --help дать этот список справки
  • --restrict запрещает использование некоторых потенциально опасных опций
  • --usage вывести краткое сообщение об использовании
  • --version вывести версию программы
Понравилась статья? Поделиться с друзьями:
Добавить комментарий