TAR(1)

НАЗВАНИЕ
tar - утилита архивирования

ОБЗОР

  Традиционное использование
tar {A|c|d|r|t|u|x}[GnSkUWOmpsMBiajJzZhPlRvwo] [ARG...]

  Использование в стиле UNIX

tar -A [OPTIONS] ARCHIVE ARCHIVE

tar -c [-f ARCHIVE] [OPTIONS] [FILE...]

tar -d [-f ARCHIVE] [OPTIONS] [FILE...]

tar -t [-f ARCHIVE] [OPTIONS] [MEMBER...]

tar -r [-f ARCHIVE] [OPTIONS] [FILE...]

tar -u [-f ARCHIVE] [OPTIONS] [FILE...]

tar -x [-f ARCHIVE] [OPTIONS] [MEMBER...]

  Использование в стиле GNU

tar {--catenate|--concatenate} [OPTIONS] ARCHIVE ARCHIVE

tar --create [--file ARCHIVE] [OPTIONS] [FILE...]

tar {--diff|--compare} [--file ARCHIVE] [OPTIONS] [FILE...]

tar --delete [--file ARCHIVE] [OPTIONS] [MEMBER...]

tar --append [-f ARCHIVE] [OPTIONS] [FILE...]

tar --list [-f ARCHIVE] [OPTIONS] [MEMBER...]

tar --test-label [--file ARCHIVE] [OPTIONS] [LABEL...]

tar --update [--file ARCHIVE] [OPTIONS] [FILE...]

tar --update [-f ARCHIVE] [OPTIONS] [FILE...]

tar {--extract|--get} [-f ARCHIVE] [OPTIONS] [MEMBER...]

ПРИМЕЧАНИЕ
Это краткое справочное руководство по GNU tar. Подробное обсуждение, включая примеры и рекомендации по использованию, доступны в GNU Tar Manual в формате texinfo. При установленных утилитах info и tar, команда

    info tar

предоставляет доступ к полному руководству.

Подробное руководство также доступно в информационном режиме emacs(1), или в различных форматах онлайн на сайте

    http://www.gnu.org/software/tar/manual

Если возникают какие-либо расхождения между этой страницей руководства и GNU Tar Manual, авторитетным источником следует считать последний.

ОПИСАНИЕ
GNU tar - это программа архивирования, предназначенная для хранения нескольких файлов в одном файле (архиве archive) и для управления такими архивами. Архив может быть обычным файлом или устройством (например, ленточный накопитель), которые могут быть расположены либо локально, либо на удаленной машине. Название программы, tape archiver, расшифровывается как ленточный архиватор.

  Стили опций
Опции для GNU tar могут быть заданы в трех разных стилях. В Традиционномстиле, первый аргумент представляет собой группу букв опций, и все последующие аргументы предоставляют аргументы тем опциям, которые их требуют. Аргументы читаются в том же порядке, что и буквы опций. Любые слова командной строки, которые остаются после обработки всех параметров обрабатываются как необязательные аргументы: имя файла или составляющих архива (MEMBER).

Например, опция c требует создания архива, опция v запрашивает операцию подробного вывода, а опция f принимает аргумент, который устанавливает имя архива для работы. Следующая команда, написанная в традиционном стиле, сохраняет все файлы из каталога /etc в архивный файл etc.tar Подробное перечисление заархивированных файлов:

    tar cfv a.tar /etc

В UNIX, или стиле коротких опций, каждая буква опции имеет префикс с одной чертой, как в других утилитах командной строки. Если опция имеет аргумент, то аргумент следует за ней, либо в виде отдельного слова командной строки, либо сразу после опции. Однако, если опция имеет необязательный аргумент, то аргумент должен следовать за буквой опции без каких-либо промежуточных пробелов, как в -g/tmp/snar.db.

Любое количество опций без аргументов может быть сгруппировано вместе после одной черты, например -vkp. Опции которые имеют аргументы (обязательные или необязательные), могут появляться в конце такого кластера, например -vkpf a.tar.

Пример написания команды выше в стиле коротких опций может выглядеть так:

    tar -cvf a.tar /etc
    или
    tar -c -v -f a.tar /etc

В GNU, или стиле длинных опций, каждая опция начинается с двух тире и имеет осмысленное имя, состоящее из строчных букв и тире. При использовании длинная опция может быть сокращена до ее начальных букв, при условии, что это не создает двусмысленности. Аргумент длинных опций может быть либо как отдельное стоящее, сразу после опции, либо аргумент отделен от опции знаком равенства без промежуточного пробела. Необязательные аргументы всегда должны использовать последний метод.

Вот несколько способов написания примера команды в этом стиле:

    tar --create --file a.tar --verbose /etc
или сокращенные опции:
    tar --cre --file=a.tar --verb /etc

Опции во всех трех стилях могут сочетаться, хотя со старыми опциями это не приветствуется.

  Режим работы
Опции, перечисленные в таблице ниже, сообщают GNU tar, какое действие выполняется. Точно одна из них должна быть задана. Значение необязательных опций зависит от запрошенного режима работы.

-A, --catenate, --concatenate
    Добавляет архив в конец другого архива. Аргументы обрабатываются как имена архивов для добавления. Все архивы должны быть в том же формате, что и архив, к которому они добавляются, в противном случае результирующий архив может быть непригодным для реализаций не GNU tar. Важно отметить, что когда задается более одного архива, составляющие из архивов, отличных от первого, будут доступны в результирующем архиве только при использовании опции -i (--ignore-zeros). Сжатые архивы не могут быть слиты.

-c, --create
    Создает новый архив. Аргументы представляют собой имена файлов для архива. По умолчанию каталоги архивируются рекурсивно, если не задана опция --no-recursion

-d, --diff, --compare
    Находит различия между объектами архива и их исходными данными в файловой системе. Аргументы необязательны и указываются составляющие архива для сравнения. Если объекты архива не заданы, то обрабатывается текущий рабочий каталог.

--delete
    Удаляет объекты из архива. Аргументы содержат названия составляющих архива, выбранных к удалению. Должен быть хотя бы один аргумент. Эта опция не работает со сжатыми архивами. Для данной опции нет короткого варианта в стиле UNIX.

-r, --append
    Добавляет файлы в конец архива. Аргументы имеют одинаковое значение как для -c (--create).

-t, --list
    Выводит содержимое архива. Аргументы необязательны. Когда аргументы заданы, они указывают имена составляющих архива для вывода списка.

--test-label
    Проверить метку тома архива и выйти. При использовании без аргументов, печатает метку тома (если есть) и выходит со статусом 0. Если задан один или несколько аргументов, tar сравнивает метку тома с каждым аргументом. Выходит с кодом 0, если совпадение найдено и, в противном случае, с кодом 1. Вывод команды отображается, если задана опция -v (--verbose). Для данной опции нет короткого варианта в стиле UNIX.

-u, --update
    Добавить в архив файлы, которые ранее не были включены в архив и новее соответствующих копий. Аргументы те же, что и в опциях -c и -r имена файлов для архива.

-x, --extract, --get
    Извлекает файлы из архива. Аргументы необязательны, принимают значение компонентов архива, которые будут извлечены.

--show-defaults
    Показать встроенные значения по умолчанию для различных параметров tar и выйти.
     аргументов.

-?, --help
    Вывести краткий обзор опций и выйти. Без аргументов.

--usage
    Вывести список доступных опций и выйти. Без аргументов.

--version
    Вывести информацию о версии программы и авторских правах и выйти.

ОПЦИИ

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

--check-device
    Проверяет номера устройств при создании инкрементных архивов (по умолчанию).

Обрабатывает новые инкрементные резервные копии в формате GNU. Причем FILE - это имя
    snapshot file (файла снимка), где tar хранит дополнительную информацию, которая используется, чтобы определить, какие файлы изменились с момента предыдущего дампа (dump) и, следовательно, должны быть сброшены снова. Если FILE не существует при создании архива, он будет создан и все файлы будут добавлены в результирующий архив (дамп level 0). Для создания инкрементных архивов ненулевого уровня N, требуется создать копию файла снимка, созданного на уровне N-1, и использовать его как FILE. При перечислении или извлечении фактическое содержимое FILE не проверяется, это необходимо только из-за синтаксических требований. Поэтому обычная практика - использовать вместо этого /dev/null.

--hole-detection=METHOD
    Использует METHOD для обнаружения дыр в разреженных файлах. Эта опция подразумевает --sparse. Допустимые значения для METHOD: seek и raw. По умолчанию используется метод seek, если это поддерживается операцилонной системой.

-G, --incremental
    Обрабатывает старые инкрементные резервные копии в формате GNU.

--ignore-failed-read
    Игнорирует нечитаемые файлы (т.е. не завершает работу с кодом, отличным от нуля)

--level=NUMBER
    Установить уровень дампа для созданного перечисленного инкрементного архива. Только в настоящее время опция --level=0 имеет смысл: она инструктирует tar обрезать файл снимка перед дампом, тем самым форсируя дамп уровня 0.

-n, --seek
    Делает архив доступным для поиска. Обычно tar определяет автоматически, возможно искать архив или нет. Эта опция применяется в случаях, когда это автоматически не удается. Это действует, только если архив открыт для чтения (например, с заданной опцией --list или --extract

--no-check-device
    Не проверять номера устройств при создании инкрементных архивов.

--no-seek
    Делает архив недоступным для поиска.

--occurrence[=N]
    Обрабатывает только N-е вхождение каждого файла в архив. Эта опция дейс--delete, --diff, --extract или --list и когда задан список файлов либо в командной строке, либо с помощью параметра -T. По умолчанию N = 1.

--restrict
    Отключает использование некоторых потенциально опасных параметров.

--sparse-version=MAJOR[.MINOR]
    Установить версию разреженного формата для использования (работает совместно с --sparse). Эта опция подразумевает использование опции --sparse. Допустимые значения аргумента 0.0, 0.1, и 1.0. Для подробного обсуждения разреженных форматов, обратитесь к руководству по GNU Tar, приложение D, "Sparse Formats". К данному руководству можно получить доступ через утилиту info, введя в терминале команду: infotar'SparseFormats'

-S, --sparse
    Эффективно обрабатывает разреженные файлы. Некоторые файлы в файловой системе могут иметь сегменты, которые на самом деле никогда не были написаны (довольно часто это файлы баз данных, созданные такими системами как DBM). Если данная опция задана, то tarпытается определить, является ли файл разреженным до архивирации, и если да, то уменьшит размер результирующего архива, не выгрузив пустые части файла.

  Управление перезаписью
Эти опции управляют действиями tar при извлечении файла поверх существующей копии на диске.

-k, --keep-old-files
    не заменяет существующие файлы при распаковке.

--keep-newer-files
    не заменяет существующие файлы на файлы новее их архивных копий.

--no-overwrite-dir
    сохраняет метаданные существующих каталогов.

--one-top-level[=DIR]
    извлекает все файлы в каталог DIR. По умолчанию (без аргументов) извлекает в подкаталог с именем, совпадающим с именем архива (минус стандартные суффиксы сжатия, распознаваемые через--auto-compress).

--overwrite
    при извлечении перезаписывает существующие файлы.

--overwrite-dir
    переписывать метаданные существующих каталогов при извлечении (по умолчанию).

--recursive-unlink
    рекурсивно удаляет все файлы в каталоге до его распаковки.

--remove-files
    удалить файлы с диска после добавления их в архив.

--skip-old-files
    пропускает и не заменяет существующие файлы при извлечении.

-U, --unlink-first
    удалить каждый файл перед извлечением поверх него.

-W, --verify
    проверяет архив после его записи.

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

--ignore-command-error
    игнорировать коды выхода подпроцесса.

--no-ignore-command-error
    не игнорировать коды выхода подпроцесса (по умолчанию).

-O, --to-stdout
    извлечь файлы в стандартный вывод.

--to-command=COMMAND
    передает извлеченные файлы в COMMAND. Аргумент - это путь к внешней программе, необязательно с аргументами командной строки. Программа будет вызвана, и содержимое извлекаемого файла будет передано в ее стандартный вывод. Дополнительные данные будут выведены через следующие переменные окружения:

    TAR_FILETYPE
        Тип файла. Это одна буква со следующим значением:

        	f	Обычный файл
        	d	Каталог
        	l	Символьная ссылка
        	h	Жесткая ссылка
        	b	Блоковое устройство
        	c	Символьное устройство
        В настоящее время поддерживаются только обычные файлы.

    TAR_MODE
        Файловый режим, восьмеричное число.

    TAR_FILENAME
        Имя файла

    TAR_REALNAME
        Имя файла, хранящегося в архиве.

    TAR_UNAME
        Владелец файла.

    TAR_GNAME
        Группа владельцев файла.

    TAR_ATIME
        Время последнего доступа. Это десятичное число, представляющее секунды с Epoch. Если в архиве указано время с точностью порядка наносекунд, то наносекунды добавляются к метке времени после десятичной точки.

    TAR_MTIME
        Время последнего изменения.

    TAR_CTIME
        Время последнего изменения статуса.

    TAR_SIZE
        Размер файла.

    TAR_UID
        Идентификатор владельца файла UID.

    TAR_GID
        Идентификатор группы владельцев файла GID.
    Кроме того, следующие переменные содержат информацию о режиме работы tar и обрабатываемом архиве:

    TAR_VERSION
        номер версии GNU tar.

    TAR_ARCHIVE
        Имя обрабатываемого архива tar.

    TAR_BLOCKING_FACTOR
        Текущий коэффициент блоков, то есть количество 512-байтовых блоков в записи.

    TAR_VOLUME
        Порядковый номер тома tar, который обрабатывается (устанавливается при чтении многотомного архива).

    TAR_FORMAT
        Форматы обрабатываемого архива: gnu, oldgnu, posix, ustar, v7. TAR_SUBCOMMAND Описывает выполняющееся действие tar.

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

--atime-preserve[=METHOD]
    Не меняет время доступа выгруженных файлов.

--delay-directory-restore
    Задерживает установку времени модификации и разрешений к извлекаемым каталогам до конца извлечения. Используйте эту опцию, при извлечении из архива, который имеет необычный порядок составляющих.

--group=NAME[:GID]
    Принудительно присваивает имя группы NAME для добавленных файлов. Если GID отсутствует, NAME может принимать значение имени пользователя или числового GID. В в этом случае недостающая часть (GID или имя) будет выведена из базы данных групп текущего хоста. При использовании с --group-map=FILE, влияет только на те файлы, группа владельцев которых не указана в FILE.

--group-map=FILE
    Прочитать карту группового перевода из FILE. Пустые строки игнорируются. Символ # комментирует все знаки после него до конца строки. Каждая непустая строка в FILE определяет перевод для одной группы. Она должна состоять из двух полей, разделенных любым количеством пробелов:
        OLDGRP NEWGRP[:NEWGID]
    OLDGRP - это допустимое имя группы или GID с префиксом +. Если не указан NEWGID, NEWGRP также должна принимать значение либо допустимого имени группы, либо +GID. В противном случае оба, NEWGRP и NEWGID, не нужно указывать в базе данных системных групп. В результате каждый входной файл с группой владельцев OLDGRP будет храниться в архиве с группой владельцев NEWGRP и GID с именем NEWGID.

--mode=CHANGES
    Принудительный символьный режим CHANGES для добавленных файлов

--mtime=DATE-OR-FILE
    Установить mtime для добавленных файлов. DATE-OR-FILE это либо дата/время в почти произвольном формате, либо имя существующего файла. В последнем случае будет использоваться mtime данного файла.

-m, --touch
    Не извлекать время изменения файла.

--no-delay-directory-restore
    Отменить действие предыдущей опции --delay-directory-restore.

--no-same-owner
    Извлекает файлы от имени пользователя (по умолчанию для обычных пользователей).

--no-same-permissions
    Применить umask пользователя при извлечении разрешений из архива (по умолчанию для обычных пользователей).

--numeric-owner
    Всегда использовать числа для обозначения имен пользователей/групп.

--owner=NAME[:UID]
    Принудительно назначить NAME владельцем добавленных файлов. Если UID не назначен, NAME может принимать значение либо имени пользователя, либо числового UID. В в этом случае недостающая часть (UID или имя) будет выведена из базы данных пользователей текущего хоста. При использовании с --owner-map=FILE влияет только на те файлы, владелец которых не указан в файле FILE.

--owner-map=FILE
    Читает карту перевода владельца из файла FILE. Пустые строки игнорируются. Каждый комментарий отмечается знаком # и действует до конца строки. Каждая непустая строка в FILE определяет перевод для одного UID. Состоит из двух полей, разделенных любым количеством пробелов:
        OLDUSR NEWUSR[:NEWUID]
    OLDUSR - это допустимое имя пользователя или UID с префиксом +. Если не указан NEWUID, то NEWUSR также должно принимать значение либо действительного имени пользователя, либо +. В противном случае не нужно указывать NEWUSR и NEWUID в базе данных системных пользователей. В результате каждый входной файл, принадлежащий OLDUSR, будет храниться в архиве с именем владельца NEWUSR и UID NEWUID.

-p, --preserve-permissions, --same-permissions
    извлекает информацию о разрешениях файла (по умолчанию при использовании с sudo).

--preserve
    То же, что и -p и -s.

--same-owner
    Выполняет попытку извлечь файлы с тем же владельцем, который существует в архиве (по умолчанию при использовании с sudo).

-s, --preserve-order, --same-order
    Сортировать имена для извлечения в соответствии с именами в архиве

--sort=ORDER
    При создании архива сортирует каталоги по ORDER, который может принимать одно из значений none, name, или inode. По умолчанию это --sort=none, в котором хранятся составляющие архива в том же порядке, который возвращен операционной системой. Использование --sort=name обеспечивает порядок элементов в созданном архиве однородным и воспроизводимым. Использование --sort=inode уменьшает количество обращений к диску при создании архива и, следовательно, может значительно ускорить архивирование. Этот порядок сортировки поддерживается только в том случае, если базовая система обеспечивает необходимую информацию.

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

--acls
    Включить поддержку POSIX ACL.

--no-acls
    Выключить поддержку POSIX ACL.

--selinux
    Включить поддержку контекста SELinux.

--no-selinux
    Выключить поддержку контекста SELinux.

--xattrs
    Включить поддержку расширенных атрибутов.

--no-xattrs
    Выключить поддержку расширенных атрибутов.

--xattrs-exclude=PATTERN
    Указывает шаблон исключения для ключей xattr. PATTERN - это регулярное выражение POSIX, например --xattrs-exclude='^user.', исключает атрибуты из пространства имен пользователя.

--xattrs-include=PATTERN
    Указывает шаблон включения для ключей xattr. PATTERN - это регулярное выражение POSIX.

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

-f, --file=ARCHIVE
    Использовать архивный файл или устройство ARCHIVE. Если эта опция не задана, tar сначала проверит переменную окружения `TAPE'. Если она установлена, ее значение будет использоваться в качестве имени архива. В противном случае, tar примет скомпилированное значение по умолчанию. По умолчанию значение может быть проверено либо с помощью --show-defaults или в конце вывода tar --help. Имя архива с двоеточием определяет файл или устройство на удаленной машине. Часть перед двоеточием принимается за имя машины или IP-адрес, а часть после двоеточия -- как файл или путь к устройству, например:
        --file=remotehost:/dev/sr0
    Необязательное имя пользователя может быть добавлено перед именем хоста, между именем пользователя и хоста - знак @. По умолчанию доступ к удаленному хосту осуществляется через команду rsh(1) В настоящее время принято использовать вместо ssh(1) Это выполняет опция
        --rsh-command=/usr/bin/ssh
    На удаленной машине должна быть доступна команда .BR rmt (8). Если путь к rmt(8) не соответствует значению tar по умолчанию, выполнить опцию --rmt-command , которая сообщит tar правильный путь.

--force-local
    Архивный файл является локальным, даже если в его имени есть двоеточие.

-F, --info-script=COMMAND, --new-volume-script=COMMAND
    Запустить COMMAND в конце каждой ленты (совместно с -M). Команда может включать аргументы. При запуске она наследует среду tar, а также следующие переменные:

    TAR_VERSION
        номер версии GNU tar.

    TAR_ARCHIVE
        имя обрабатываемого архива tar.

    TAR_BLOCKING_FACTOR
        текущий коэффициент блоков, то есть количество 512-байтовых блоков в записи.

    TAR_VOLUME
        Порядковый номер тома tar, который обрабатывается (устанавливается, если читает многотомный архив).

    TAR_FORMAT
        Формат обрабатываемого архива: gnu, oldgnu, posix, ustar, v7.

    -TAR_SUBCOMMAND
        описывает выполняемое действие tar.

    TAR_FD
        передает имя нового тома в tar.
    Если информационный скрипт завершается неудачно, tar завершается; в противном случае он начинает писать следующий том.

-L, --tape-length=N
    Заменяет ленту после записи Nx1024 байтов. Если N сопровождается суффиксом размера (см. подраздел Суффиксы размера ниже), то суффикс указывает множитель, который будет использоваться вместо 1024. Эта опция используется в сочетании с -M.

-M, --multi-volume
    Создает/перечисляет/извлекает многотомный архив.

--rmt-command=COMMAND
    Использует COMMAND вместо rmt при доступе к удаленным архивам (см. описание опции -f выше).

--rsh-command=COMMAND
    Использует COMMAND вместо rsh при доступе к удаленным архивам (см. описание опции -f выше).

--volno-file=FILE
    Данная опция используется в сочетании с --multi-volume tar отслеживает требуемый том многотомного архива

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

-b, --blocking-factor=BLOCKS
    Устанавливает значение размера записи как BLOCKSx512 байт.

-B, --read-full-records
    При перечислении или извлечении принимает неполные входные записи после маркера конца файла (end-of-file).

-i, --ignore-zeros
    Игнорировать обнуленные блоки в архиве. Обычно последоватльность из двух 512-блоков заполнена нулями, это означает EOF (конец файла). Утилита tar перестает читать после EOF. Эта опция дает указание читать дальше. Она полезна при чтении архивов, созданных с помощью опции -A.

--record-size=NUMBER
    Устанавливает размер записи. NUMBER - это количество байт за запись. Это число должно быть кратным 512. К нему можно добавить суффикс размера, например --record-size=10K, для 10 килобайт (список доступных суффиксов см. в подразделе Суффиксы размера, ).

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

-H, --format=FORMAT
    создает архив заданного формата. Доступные форматы:

    gnu формат GNU tar 1.13.x

    oldgnu
        формат GNU tar версии 1.12.x и старее

    pax, posix
        формат POSIX 1003.1-2001 (pax)

    ustar
        формат POSIX 1003.1-1988 (ustar)

    v7  старый формат tar V7

--old-archive, --portability
    тоже что и --format=v7

--pax-option=keyword[[:]=value][,keyword[[:]=value]]...
    управляет ключевыми словами pax при создании архивов PAX (-Hpax). Эта опция эквивалентна опции -o утилиты pax(1)

--posix
    тоже что и --format=posix

-V, --label=TEXT
    Создать архив с именем тома TEXT. Для перечисления или извлечения, использовать TEXT в качестве шаблона для имени тома.

  Опции сжатия

-a, --auto-compress
    использовать суффикс архива для определения программы сжатия

-I, --use-compress-program=COMMAND
    фильтрует данные по COMMAND. Применять совместно с опцией -d для декомпрессии. Аргумент может содержать опции командной строки

-j, --bzip2
    фильтрует архив c помощью bzip2(1).

-J, --xz
    фильтрует архив c помощью xz(1).

--lzip
    фильтрует архив c помощью lzip(1).

--lzma
    фильтрует архив c помощью lzma(1).

--lzop
    фильтрует архив c помощью lzop(1).

--no-auto-compress
    не использовать суффикс архива для определения программы сжатия

-z, --gzip, --gunzip, --ungzip
    фильтрует архив c помощью gzip(1).

-Z, --compress, --uncompress
    фильтрует архив c помощью compress(1).

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

--add-file=FILE
    добавляет FILE к архиву (полезно, если его имя начинается с тире).

--backup[=CONTROL]
    выполняет резервное копирование перед удалением. Аргумент CONTROL, если он указан, контролирует политику резервного копирования. Допустимые значения аргумента:

    none, off
        никогда не делать резервное копирование

    t, numbered
        делать пронумерованные резервные копии.

    nil, existing
        делать пронумерованные резервные копии если такие существуют, в противном случае - делать простые.

    never, simple
        всегда делать простые резервные копии
    Если аргумент CONTROL не задан, то его значение берется из переменной окружения VERSION_CONTROL
     Если эта переменная не установлена, то CONTROL принимает значение existing

-C, --directory=DIR
    Заменяет каталог на DIR перед выполнением каких-либо операций. Данная опция чувствительна к порядку, то есть влияет на все последующие опции.

--exclude=PATTERN
    Исключить файлы, соответствующие PATTERN, шаблону подстановки в стиле glob(3).

--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-ignore, за исключением того, что шаблоны из FILE влияют как на каталог, так и на все его подкаталоги.

--exclude-tag=FILE
    Исключить содержимое каталогов, содержащих FILE, за исключением FILE.

--exclude-tag-all=FILE
    Исключить каталоги, содержащие FILE.

--exclude-tag-under=FILE
    Исключить все содержимое каталога, содержащего FILE.

--exclude-vcs
    Исключить каталоги системы контроля версий.

--exclude-vcs-ignores
    Исключить файлы, которые соответствуют шаблонам, прочитанным из игнорируемых VCS файлов. Поддерживаемые файлы: .cvsignore, .gitignore, .bzrignore, и .hgignore.

-h, --dereference
    Следовать символическим ссылкам; архивировать и выводить файлы, на которые указывают символические ссылки.

--hard-dereference
    Следовать жестким ссылкам; архивировать и выгружать файлы по жестким ссылкам.

-K, --starting-file=MEMBER
    Начать с заданного члена MEMBER архива.

--newer-mtime=DATE
    Работать с файлами, данные которых изменились после DATE. Если DATE начинается с / или . это имя файла; mtime этого файла используется в качестве даты.

--no-null
    Отключить действие предыдущей опции --null.

--no-recursion
    Избегает автоматического спуска по каталогам.

--no-unquote
    Не заключать в кавычки входной файл или имена членов архива.

--no-verbatim-files-from
    Обрабатывать каждую строку, прочитанную из списка файлов, как если бы она была указана в командной строке. То есть, пробелы в начале и конце удаляются и, если результирующая строка начинается с тире, она обрабатывается как tar опция командной строки. Это поведение по умолчанию. Опция --no-verbatim-files-from предоставляется как способ восстановить это после опции --verbatim-files-from. Эта опция позиционная: она влияет на все опции --files-from, которые появляются после, до опции --verbatim-files-from или конца строки, в зависимости от того, что произойдет первым. Работает совместно с опцией --no-null.

--null
    Инструктирует последующие опции -T читать имена с нулевым символом в конце дословно (отключает специальную обработку имен, начинающихся с тире). См. --verbatim-files-from

-N, --newer=DATE, --after-date=DATE
    Хранит только файлы, новее DATE. Если DATE начинается с / или ., это будет имя файла; ctime этого файла используется в качестве даты.

--one-file-system
    При создании архива остается в локальной файловой системе

-P, --absolute-names
    При создании архивов не удаляет начальные косые черты из имен файлов.

--recursion
    Рекурсия в каталогах (по умолчанию).

--suffix=STRING
    При резервном копировании перед удалением, переопределяет обычный суффикс. Суффикс по умолчанию: ~, если не переопределено переменной среды SIMPLE_BACKUP_SUFFIX.

-T, --files-from=FILE
    Получить имена для извлечения или создания из FILE. Если не указано иное, FILE должен содержать список имен, разделенные ASCII LF (то есть одно имя в строке). Прочитанные имена обрабатываются так же, как аргументы командной строки. Они подвергаются удалению кавычек и разбиению слов, и любая строка, начинающаяся с -, обрабатывается как опция командной строки tar. Если это поведение нежелательно, его можно отключить с помощью опции --verbatim-files-from. Параметр --null указывает tar, что имена в FILE отделяются символом ASCII NUL вместо LF. Это полезно, если список генерируется предикатом find(1) -print0

--unquote
    Цитирует имена файлов и членов архива (по умолчанию).

--verbatim-files-from
    Обрабатывать каждую строку, полученную из списка файлов, как имя файла, даже если оно начинается с тире. Списки файлов поставляются с опцией --files-from (-T). По умолчанию обрабатывать имена, представленные в списках файлов, как если бы они были напечатаны в командной строке, то есть любые имена, начинающиеся с тире, рассматриваются как опции tar. Параметр --verbatim-files-from отключает это поведение. Опция --verbatim-files-from влияет на все параметры --files-from, которые появляются после нее в командной строке. Это действие отменяется опцией --no-verbatim-files-from. Опция --verbatim-files-from работает совместно с опцией --null. Смотрите также --add-file.

-X, --exclude-from=FILE
    Исключает файлы, соответствующие шаблонам, указанным в FILE.

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

--strip-components=NUMBER
    Убрать номер NUMBER ведущих компонентов из имен файлов при извлечении.

--transform=EXPRESSION, --xform=EXPRESSION
    Заменяет EXPRESSION для преобразования имен файлов.

  Параметры соответствия имени файла
Данные параметры влияют как на исключение, так и на включение шаблонов.

--anchored
    Шаблоны соответствуют началу имени файла.

--ignore-case
    Игнорировать регистр.

--no-anchored
    Шаблоны совпадают после любого / (по умолчанию для исключения).

--no-ignore-case
    Чувствительность к регистру (по умолчанию).

--no-wildcards
    Дословное совпадение строк.

--no-wildcards-match-slash
    Подстановки не совпадают с /.

--wildcards
    Использовать подстановки (по умолчанию для исключения).

--wildcards-match-slash
    Подстановки совпадают с / (по умолчанию для исключения).

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

--checkpoint[=N]
    Выводит сообщения о ходе выполнения каждые N записей (по умолчанию 10), выводит имена каталогов при чтении архива

--checkpoint-action=ACTION
    Запустить ACTION на каждой контрольной точке checkpoint.

--clamp-mtime
    Устанавливает время, когда файл более новый, чем тот, который был задан с помощью --mtime.

--index-file=FILE
    Пишет подробный вывод в FILE.

-l, --check-links
    Выводит сообщение если не все ссылки выгружены.

--no-quote-chars=STRING
    Отключить цитирование символов из строки STRING.

--quote-chars=STRING
    Дополнительно цитировать символы из STRING.

--quoting-style=STYLE
    Установить стиль цитирования для имен файлов и элементов. Допустимые значения для STYLE: literal, shell, shell-always, c, c-maybe, escape, locale, clocale.

-R, --block-number
    Выводить номер блока в архиве с каждым сообщением.

--show-omitted-dirs
    При перечислении или извлечении перечислить каждый каталог, который не соответствует критерию поиска.

--show-transformed-names, --show-stored-names
    Вывести имена файлов или архивов после преобразования с помощью опций --strip и --transform.

--totals[=SIGNAL]
    Вывести общее количество байт после обработки архива. Если задан SIGNAL, то выводить общее количество байт при доставке этого сигнала. Разрешенные сигналы: SIGHUP, SIGQUIT, SIGINT, SIGUSR1, и SIGUSR2. Префикс SIG может быть опущен.

--utc
    Вывести время изменения файла в формате UTC.

-v, --verbose
    Вывести подробный список обработанных файлов.

--warning=KEYWORD
    Включить или отключить сообщения с предупреждениями, обозначенные KEYWORD. Сообщения подавляются, если KEYWORD имеет префикс no- и включен иначе. Накапливается несколько сообщений --warning. Ключевые слова, управляющие общим действием tar:

    all Включает все предупреждающие сообщения. Это по умолчанию.

    none
        Отключает все предупреждающие сообщения.

    filename-with-nuls
        "%s: file name read contains nul character"

    alone-zero-block
        "A lone zero block at %s"

    Ключевые слова, применимые для tar --create:

    cachedir
        "%s: содержит тег каталога кеша %s; %s"

    file-shrank
        "%s: Файл сжался на %s байт; заполнение нулями"

    xdev
        "%s: файл на другой файловой системе; не выгружен"

    file-ignored
        "%s: Неизвестный тип файла; файл игнорируется"
        "%s: сокет игнорируется"
        "%s: door игнорируется"

    file-unchanged
        "%s: файл не изменился; не сбрасывается"

    ignore-archive
        "%s: файл является архивом; не выгружается"

    file-removed
        "%s: Файл удален прежде чем прочитан"

    file-changed
        "%s: файл изменился во время чтения"

    Ключевые слова, применимые для tar --extract:

    existing-file
        "%s: пропустить существующий файл"

    timestamp
        "%s: неправдоподобно старая метка времени %s"
        "%s: метка времени %s в будущем"

    contiguous-cast
        "Извлечение смежных файлов как обычных файлов"

    symlink-cast
        "Попытка извлечения символических ссылок как жестких ссылок"

    unknown-cast
        "%s: Неизвестный тип файла '%c', извлечен как обычный файл"

    ignore-newer
        "Текущий %s новее или совпадает по времени создания"

    unknown-keyword
        "Игнорирование неизвестного ключевого слова расширенного заголовка '%s'"

    decompress-program
        Управляет подробным описанием сбоев, возникающих при попытке запуска альтернативных программ распаковки. Данное предупреждение отключено по умолчанию (если не используется --verbose). Типичный пример того, что вы можете получить при использовании этого предупреждения:
            $ tar --warning=decompress-program -x -f archive.Z
            tar (child): cannot run compress: No such file or directory
            tar (child): trying gzip
        Это означает, что tar сначала попытался распаковать archive.Z используя compress, и, когда это не удалось, переключился на gzip.

    record-size
        "Record size = %lu blocks"

    Ключевые слова, контролирующие пошаговое извлечение:

    rename-directory
        "%s: Каталог был переименован из %s"
        "%s: Каталог был переименован"

    new-directory
        "%s: Новый каталог"

    xdev
        "%s: каталог находится на другом устройстве: не удаляется"

    bad-dumpdir
        "Неверно сформированный каталог дампа: 'X' никогда не использовался"

-w, --interactive, --confirmation
    Запрашивать подтверждение каждого действия.

  Варианты совместимости

-o  При создании так же, как --old-archive. При извлечении, то же самое что и --no-same-owner.

  Суффиксы размера

	Суффикс	Единицы	Байтовый эквивалент
	b	Blocks	SIZE x 512
	B	Kilobytes	SIZE x 1024
	c	Bytes	SIZE
	G	Gigabytes	SIZE x 1024^3
	K	Kilobytes	SIZE x 1024
	k	Kilobytes	SIZE x 1024
	M	Megabytes	SIZE x 1024^2
	P	Petabytes	SIZE x 1024^5
	T	Terabytes	SIZE x 1024^4
	w	Words	SIZE x 2

ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
Код выхода Tar указывает, смог ли он успешно выполнить запрошенное действие, и если нет, то какая ошибка произошла.

0   Успешное завершение.

1   Некоторые файлы отличаются. Если tar был вызван с помощью опции --compare (--diff, -d), это означает, что некоторые файлы в архиве отличаются от их дисковых аналогов. Если с tar была указана одна из опций --create, --append или --update, этот код выхода означает что некоторые файлы были изменены во время архивации, и поэтому в результирующий архив не содержит точной копии набора файлов.

2   Фатальная ошибка Это означает, что произошла неустранимая неисправимая ошибка.

Если подпроцесс, который был вызван tar завершился с ненулевым кодом выхода, то tar сам завершается с этим кодом. Это может произойти, например, если была использована опция сжатия (например, -z), а произошел сбой внешней программы-компрессора. Другой пример - сбой rmt во время резервного копирования на удаленное устройство.

СМОТРИТЕ ТАКЖЕ
bzip2(1), compress(1), gzip(1), lzma(1), lzop(1), rmt(8), symlink(7), tar(5), xz(1).

Для просмотра полного руководства по tar запустить info tar или использовать информационный режим emacs(1).

Онлайн копии документации по GNU tar в различных форматах:

http://www.gnu.org/software/tar/manual

ОТЧЕТЫ ОБ ОШИБКАХ
Сообщить об ошибках: <bug-tar@gnu.org>.

АВТОРСКИЕ ПРАВА
Copyright © 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
Это бесплатное программное обеспечение: вы можете изменять и распространять его. Гарантия не предоставляется, если это разрешено законом.

ПЕРЕВОД
АстраЛинукс июль 2020 - перевод TAR 1 "23 Марта 2016" "TAR" "Руководство по GNU TAR"