123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221 |
- .\" Man page generated from reStructuredText.
- .
- .
- .nr rst2man-indent-level 0
- .
- .de1 rstReportMargin
- \\$1 \\n[an-margin]
- level \\n[rst2man-indent-level]
- level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
- -
- \\n[rst2man-indent0]
- \\n[rst2man-indent1]
- \\n[rst2man-indent2]
- ..
- .de1 INDENT
- .\" .rstReportMargin pre:
- . RS \\$1
- . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
- . nr rst2man-indent-level +1
- .\" .rstReportMargin post:
- ..
- .de UNINDENT
- . RE
- .\" indent \\n[an-margin]
- .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
- .nr rst2man-indent-level -1
- .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
- .in \\n[rst2man-indent\\n[rst2man-indent-level]]u
- ..
- .TH "BORG-IMPORT-TAR" 1 "2023-09-14" "" "borg backup tool"
- .SH NAME
- borg-import-tar \- Create a backup archive from a tarball
- .SH SYNOPSIS
- .sp
- borg [common options] import\-tar [options] NAME TARFILE
- .SH DESCRIPTION
- .sp
- This command creates a backup archive from a tarball.
- .sp
- When giving \(aq\-\(aq as path, Borg will read a tar stream from standard input.
- .sp
- By default (\-\-tar\-filter=auto) Borg will detect whether the file is compressed
- based on its file extension and pipe the file through an appropriate filter:
- .INDENT 0.0
- .IP \(bu 2
- \&.tar.gz or .tgz: gzip \-d
- .IP \(bu 2
- \&.tar.bz2 or .tbz: bzip2 \-d
- .IP \(bu 2
- \&.tar.xz or .txz: xz \-d
- .IP \(bu 2
- \&.tar.zstd or .tar.zst: zstd \-d
- .IP \(bu 2
- \&.tar.lz4: lz4 \-d
- .UNINDENT
- .sp
- Alternatively, a \-\-tar\-filter program may be explicitly specified. It should
- read compressed data from stdin and output an uncompressed tar stream on
- stdout.
- .sp
- Most documentation of borg create applies. Note that this command does not
- support excluding files.
- .sp
- A \fB\-\-sparse\fP option (as found in borg create) is not supported.
- .sp
- About tar formats and metadata conservation or loss, please see \fBborg export\-tar\fP\&.
- .sp
- import\-tar reads these tar formats:
- .INDENT 0.0
- .IP \(bu 2
- BORG: borg specific (PAX\-based)
- .IP \(bu 2
- PAX: POSIX.1\-2001
- .IP \(bu 2
- GNU: GNU tar
- .IP \(bu 2
- POSIX.1\-1988 (ustar)
- .IP \(bu 2
- UNIX V7 tar
- .IP \(bu 2
- SunOS tar with extended attributes
- .UNINDENT
- .sp
- To import multiple tarballs into a single archive, they can be simply
- concatenated (e.g. using \(dqcat\(dq) into a single file, and imported with an
- \fB\-\-ignore\-zeros\fP option to skip through the stop markers between them.
- .SH OPTIONS
- .sp
- See \fIborg\-common(1)\fP for common options of Borg commands.
- .SS arguments
- .INDENT 0.0
- .TP
- .B NAME
- specify the archive name
- .TP
- .B TARFILE
- input tar file. \(dq\-\(dq to read from stdin instead.
- .UNINDENT
- .SS options
- .INDENT 0.0
- .TP
- .B \-\-tar\-filter
- filter program to pipe data through
- .TP
- .B \-s\fP,\fB \-\-stats
- print statistics for the created archive
- .TP
- .B \-\-list
- output verbose list of items (files, dirs, ...)
- .TP
- .BI \-\-filter \ STATUSCHARS
- only display items with the given status characters
- .TP
- .B \-\-json
- output stats as JSON (implies \-\-stats)
- .TP
- .B \-\-ignore\-zeros
- ignore zero\-filled blocks in the input tarball
- .UNINDENT
- .SS Archive options
- .INDENT 0.0
- .TP
- .BI \-\-comment \ COMMENT
- add a comment text to the archive
- .TP
- .BI \-\-timestamp \ TIMESTAMP
- manually specify the archive creation date/time (yyyy\-mm\-ddThh:mm:ss[(+|\-)HH:MM] format, (+|\-)HH:MM is the UTC offset, default: local time zone). Alternatively, give a reference file/directory.
- .TP
- .BI \-c \ SECONDS\fR,\fB \ \-\-checkpoint\-interval \ SECONDS
- write checkpoint every SECONDS seconds (Default: 1800)
- .TP
- .BI \-\-checkpoint\-volume \ BYTES
- write checkpoint every BYTES bytes (Default: 0, meaning no volume based checkpointing)
- .TP
- .BI \-\-chunker\-params \ PARAMS
- specify the chunker parameters (ALGO, CHUNK_MIN_EXP, CHUNK_MAX_EXP, HASH_MASK_BITS, HASH_WINDOW_SIZE). default: buzhash,19,23,21,4095
- .TP
- .BI \-C \ COMPRESSION\fR,\fB \ \-\-compression \ COMPRESSION
- select compression algorithm, see the output of the \(dqborg help compression\(dq command for details.
- .UNINDENT
- .SH EXAMPLES
- .INDENT 0.0
- .INDENT 3.5
- .sp
- .nf
- .ft C
- # export as uncompressed tar
- $ borg export\-tar Monday Monday.tar
- # import an uncompressed tar
- $ borg import\-tar Monday Monday.tar
- # exclude some file types, compress using gzip
- $ borg export\-tar Monday Monday.tar.gz \-\-exclude \(aq*.so\(aq
- # use higher compression level with gzip
- $ borg export\-tar \-\-tar\-filter=\(dqgzip \-9\(dq Monday Monday.tar.gz
- # copy an archive from repoA to repoB
- $ borg \-r repoA export\-tar \-\-tar\-format=BORG archive \- | borg \-r repoB import\-tar archive \-
- # export a tar, but instead of storing it on disk, upload it to remote site using curl
- $ borg export\-tar Monday \- | curl \-\-data\-binary @\- https://somewhere/to/POST
- # remote extraction via \(dqtarpipe\(dq
- $ borg export\-tar Monday \- | ssh somewhere \(dqcd extracted; tar x\(dq
- .ft P
- .fi
- .UNINDENT
- .UNINDENT
- .SS Archives transfer script
- .sp
- Outputs a script that copies all archives from repo1 to repo2:
- .INDENT 0.0
- .INDENT 3.5
- .sp
- .nf
- .ft C
- for A T in \(gaborg list \-\-format=\(aq{archive} {time:%Y\-%m\-%dT%H:%M:%S}{NL}\(aq\(ga
- do
- echo \(dqborg \-r repo1 export\-tar \-\-tar\-format=BORG $A \- | borg \-r repo2 import\-tar \-\-timestamp=$T $A \-\(dq
- done
- .ft P
- .fi
- .UNINDENT
- .UNINDENT
- .sp
- Kept:
- .INDENT 0.0
- .IP \(bu 2
- archive name, archive timestamp
- .IP \(bu 2
- archive contents (all items with metadata and data)
- .UNINDENT
- .sp
- Lost:
- .INDENT 0.0
- .IP \(bu 2
- some archive metadata (like the original commandline, execution time, etc.)
- .UNINDENT
- .sp
- Please note:
- .INDENT 0.0
- .IP \(bu 2
- all data goes over that pipe, again and again for every archive
- .IP \(bu 2
- the pipe is dumb, there is no data or transfer time reduction there due to deduplication
- .IP \(bu 2
- maybe add compression
- .IP \(bu 2
- pipe over ssh for remote transfer
- .IP \(bu 2
- no special sparse file support
- .UNINDENT
- .SH SEE ALSO
- .sp
- \fIborg\-common(1)\fP
- .SH AUTHOR
- The Borg Collective
- .\" Generated by docutils manpage writer.
- .
|