Scroll to navigation

BORG-EXTRACT(1) borg backup tool BORG-EXTRACT(1)

NAME

borg-extract - Extract archive contents

SYNOPSIS

borg [common options] extract [options] ARCHIVE [PATH...]

DESCRIPTION

This command extracts the contents of an archive. By default the entire archive is extracted but a subset of files and directories can be selected by passing a list of PATHs as arguments. The file selection can further be restricted by using the --exclude option.

See the output of the "borg help patterns" command for more help on exclude patterns.

By using --dry-run, you can do all extraction steps except actually writing the output data: reading metadata and data chunks from the repo, checking the hash/hmac, decrypting, decompressing.

--progress can be slower than no progress display, since it makes one additional pass over the archive metadata.

NOTE:

Currently, extract always writes into the current working directory ("."), so make sure you cd to the right place before calling borg extract.


OPTIONS

See borg-common(1) for common options of Borg commands.

arguments

ARCHIVE
archive to extract
PATH
paths to extract; patterns are supported

optional arguments

--list
output verbose list of items (files, dirs, ...)
-n, --dry-run
do not actually change any files
--numeric-owner
only obey numeric user and group identifiers
--nobsdflags
do not extract/set bsdflags (e.g. NODUMP, IMMUTABLE)
--stdout
write all extracted data to stdout
--sparse
create holes in output sparse file from all-zero chunks

Exclusion options

-e PATTERN, --exclude PATTERN
exclude paths matching PATTERN
--exclude-from EXCLUDEFILE
read exclude patterns from EXCLUDEFILE, one per line
--pattern PATTERN
experimental: include/exclude paths matching PATTERN
--patterns-from PATTERNFILE
experimental: read include/exclude patterns from PATTERNFILE, one per line
--strip-components NUMBER
Remove the specified number of leading path elements. Paths with fewer elements will be silently skipped.

EXAMPLES

# Extract entire archive
$ borg extract /path/to/repo::my-files
# Extract entire archive and list files while processing
$ borg extract --list /path/to/repo::my-files
# Verify whether an archive could be successfully extracted, but do not write files to disk
$ borg extract --dry-run /path/to/repo::my-files
# Extract the "src" directory
$ borg extract /path/to/repo::my-files home/USERNAME/src
# Extract the "src" directory but exclude object files
$ borg extract /path/to/repo::my-files home/USERNAME/src --exclude '*.o'
# Restore a raw device (must not be active/in use/mounted at that time)
$ borg extract --stdout /path/to/repo::my-sdx | dd of=/dev/sdx bs=10M


SEE ALSO

borg-common(1), borg-mount(1)

AUTHOR

The Borg Collective
2020-12-24