---
name: "gnutar"
section: "1"
platform: "linux"
package: "star"
version: "1.5a67-1"
release: "Debian 4.0 (Etch)"
platforms: ["linux"]
url: "https://new.carta.tech/gnutar"
---

# gnutar(1)

emulates the GNU version of the tar archiver

## NAME

gnutar - emulates the GNU version of the tar archiver

## SYNOPSIS

**gnutar**  *command* \[ *options* \]  *file1 ... filen*

## DESCRIPTION

This manual page documents the GNU version of **tar**, an archiving program designed to store and extract files from  an archive file known as a  *tarfile.* A  *tarfile* may be made on a tape drive, however, it is also common to write a *tarfile* to a normal file.  The first argument to  **gnutar** must be one of the options: **Acdrtux**, followed by any optional functions. The final arguments to  **gnutar** are the names of the files or directories which should be archived. The use of a directory name always implies that the subdirectories below should be included in the archive.

## COMMAND

- **One of the following commands must be used:**

  - **-A**, **--catenate**, **--concatenate**

  append tar files to an archive

- **-c**, **--create**

  create a new archive

- **-d**, **--diff**, **--compare**

  find differences between archive and file system

- **--delete**

  delete from the archive (not for use on mag tapes!)

- **-r**, **--append**

  append files to the end of an archive

- **-t**, **--list**

  list the contents of an archive

- **-u**, **--update**

  only append files that are newer than copy in archive

- **-x**, **--extract**, **--get**

  extract files from an archive

## OPTIONS

- **--atime-preserve**

  don't change access times on dumped files

- **-b**, **--block-size** N

  block size of Nx512 bytes (default N=20)

- **-B**, **--read-full-blocks**

  reblock as we read (for reading 4.2BSD pipes)

- **-C**, **--directory** DIR

  change to directory DIR

- **--checkpoint**

  print directory names while reading the archive

- **-f**, **--file** \[HOSTNAME:\]F

  use archive file or device F (default /dev/rmt0)

- **--force-local**

  archive file is local even if has a colon

- **-F**, **--info-script** F, **--new-volume-script** F

  run script at end of each tape (implies -M)

- **-G**, **--incremental**

  create/list/extract old GNU-format incremental backup

- **-g**, **--listed-incremental** F

  create/list/extract new GNU-format incremental backup

- **-h**, **--dereference**

  don't dump symlinks; dump the files they point to

- **-i**, **--ignore-zeros**

  ignore blocks of zeros in archive (normally mean EOF)

- **-j**, **--bzip**

  filter the archive through bzip2.

- **--ignore-failed-read**

  don't exit with non-zero status on unreadable files

- **-k**, **--keep-old-files**

  keep existing files; don't overwrite them from archive

- **-K**, **--starting-file** F

  begin at file F in the archive

- **-l**, **--one-file-system**

  stay in local file system when creating an archive

- **-L**, **--tape-length** N

  change tapes after writing N\*1024 bytes

- **-m**, **--modification-time**

  don't extract file modified time

- **-M**, **--multi-volume**

  create/list/extract multi-volume archive

- **-N**, **--after-date** DATE, **--newer** DATE

  only store files newer than DATE

- **-o**, **--old-archive**, **--portability**

  write a V7 format archive, rather than ANSI format

- **-O**, **--to-stdout**

  extract files to standard output

- **-p**, **--same-permissions**, **--preserve-permissions**

  extract all protection information

- **-P**, **--absolute-paths**

  don't strip leading \`/'s from file names

- **--preserve**

  like **-p -s**.

- **-R**, **--record-number**

  show record number within archive with each message

- **--remove-files**

  remove files after adding them to the archive

- **-s**, **--same-order**, **--preserve-order**

  list of names to extract is sorted to match archive

- **--same-owner**

  create extracted files with the same ownership

- **-S**, **--sparse**

  handle sparse files efficiently

- **-T**, **--files-from=** F

  get names to extract or create from file F

- **--null**

  \-T reads null-terminated names, disable -C

- **--totals**

  print total bytes written with --create

- **-v**, **--verbose**

  verbosely list files processed

- **-V**, **--label** NAME

  create archive with volume name NAME

- **--version**

  print **gnutar** program version number

- **-w**, **--interactive**, **--confirmation**

  ask for confirmation for every action

- **-W**, **--verify**

  attempt to verify the archive after writing it

- **--exclude** *FILE*

  exclude file FILE

- **-X**, **--exclude-from** FILE

  exclude files listed in FILE

- **-Z**, **--compress**, **--uncompress**

  filter the archive through compress

- **-z**, **--gzip**, **--ungzip**

  filter the archive through gzip

- **--use-compress-program** *PROG*

  filter the archive through PROG (which must accept -d)

## EXTENDED OPTIONS

The extended options are options taken from **star**.

- **--help**

  Prints a summary of the most important options for [**gnutar**(1)](/gnutar/1.md) and exits.

- **--xhelp**

  Prints a summary of the less important options for [**gnutar**(1)](/gnutar/1.md) and exits.

- **--version**

  Prints the  **gnutar** version number string and exists.

- **--debug**

  print additional debug messages

- **xdebug=***#*

  - **xd=***#*

  set extended debug level

- **-/**

  don't strip leading '/'s from file names

- **-..**

  don't skip filenames that contain '..' in non-interactive extract

- **--secure-links**

  don't extract links that start with '/' or contain '..'

- **--acl**

  handle access control lists

- **--xfflags**

  handle extended file flags

- **bs=***#*

  set (output) block size to #

- **fs=***#*

  set fifo size to #

- **--no-fsync**

  do not call fsync() for each extracted file (may be dangerous)

- **--time**

   print timing info

- **--no-statistics**

  do not print statistics

- **--fifostats**

  print fifo statistics

- **--no-fifo**

  don't use a fifo to optimize data flow from/to tape

- **--numeric**

  don't use user/group name from tape

The options above are not defined by GNU tar.

For a complete documentation of the **star** based optione check [**star**(1)](/star/1.md).

## EXAMPLES

## ENVIRONMENT

## FILES

## SEE ALSO

[**spax**(1)](/spax/1.md), [**suntar**(1)](/suntar/1.md), [**scpio**(1)](/scpio/1.md), [**tar**(1)](/tar/1.md), [**cpio**(1)](/cpio/1.md), [**pax**(1)](/pax/1.md), [**rcp**(1)](/rcp/1.md), [**mt**(1)](/mt/1.md), **rmt**(1), [**match**(1)](/match/1.md), [**dd**(1)](/dd/1.md), [**sdd**(1)](/sdd/1.md), [**rsh**(1)](/rsh/1.md), [**ssh**(1)](/ssh/1.md), [**star**(1)](/star/1.md), **star**(4/5), [**rcmd**(3)](/rcmd/3.md), **fssnap**(1m)

## DIAGNOSTICS

## NOTES

This **gnutar** implementation is based on the **star** implementation and does not implement all features of the original GNU tar program.

## BUGS

## AUTHOR

```
Joerg Schilling
Seestr. 110
D-13353 Berlin
Germany
```

Mail bugs and suggestions to:

**schilling@fokus.fraunhofer.de** or **js@cs.tu-berlin.de** or **joerg@schily.isdn.cs.tu-berlin.de**
