restic backup(1)

NAME

restic-backup - Create a new backup of files and/or directories

SYNOPSIS

restic backup [flags] [FILE/DIR] ...

DESCRIPTION

The "backup" command creates a new snapshot and saves the files and directories given as the arguments.

EXIT STATUS

Exit status is 0 if the command was successful. Exit status is 1 if there was a fatal error (no snapshot created). Exit status is 3 if some source data could not be read (incomplete snapshot created).

OPTIONS

-n, --dry-run[=false]
    do not upload or write any data, just show what would be done

-e, --exclude=[]
    exclude a pattern (can be specified multiple times)

--exclude-caches[=false]
    excludes cache directories that are marked with a CACHEDIR.TAG file. See https://bford.info/cachedir/ for the Cache Directory Tagging Standard

--exclude-file=[]
    read exclude patterns from a file (can be specified multiple times)

--exclude-if-present=[]
    takes filename[:header], exclude contents of directories containing filename (except filename itself) if header of that file is as provided (can be specified multiple times)

--exclude-larger-than=""
    max size of the files to be backed up (allowed suffixes: k/K, m/M, g/G, t/T)

--files-from=[]
    read the files to backup from file (can be combined with file args; can be specified multiple times)

--files-from-raw=[]
    read the files to backup from file (can be combined with file args; can be specified multiple times)

--files-from-verbatim=[]
    read the files to backup from file (can be combined with file args; can be specified multiple times)

-f, --force[=false]
    force re-reading the target files/directories (overrides the "parent" flag)

-g, --group-by=host,paths
    group snapshots by host, paths and/or tags, separated by comma (disable grouping with '')

-h, --help[=false]
    help for backup

-H, --host=""
    set the hostname for the snapshot manually. To prevent an expensive rescan use the "parent" flag

--iexclude=[]
    same as --exclude pattern but ignores the casing of filenames

--iexclude-file=[]
    same as --exclude-file but ignores casing of filenames in patterns

--ignore-ctime[=false]
    ignore ctime changes when checking for modified files

--ignore-inode[=false]
    ignore inode number changes when checking for modified files

--no-scan[=false]
    do not run scanner to estimate size of backup

-x, --one-file-system[=false]
    exclude other file systems, don't cross filesystem boundaries and subvolumes

--parent=""
    use this parent snapshot (default: latest snapshot in the group determined by --group-by and not newer than the timestamp determined by --time)

--read-concurrency=0
    read n files concurrently (default: $RESTIC_READ_CONCURRENCY or 2)

--stdin[=false]
    read backup from stdin

--stdin-filename="stdin"
    filename to use when reading from stdin

--tag=[]
    add tags for the new snapshot in the format tag[,tag,...] (can be specified multiple times)

--time=""
    time of the backup (ex. '2012-11-01 22:08:41') (default: now)

--with-atime[=false]
    store the atime for all files and directories

OPTIONS INHERITED FROM PARENT COMMANDS

--cacert=[]
    file to load root certificates from (default: use system certificates or $RESTIC_CACERT)

--cache-dir=""
    set the cache directory. (default: use system default cache directory)

--cleanup-cache[=false]
    auto remove old cache directories

--compression=auto
    compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION)

--insecure-tls[=false]
    skip TLS certificate verification when connecting to the repository (insecure)

--json[=false]
    set output mode to JSON for commands that support it

--key-hint=""
    key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)

--limit-download=0
    limits downloads to a maximum rate in KiB/s. (default: unlimited)

--limit-upload=0
    limits uploads to a maximum rate in KiB/s. (default: unlimited)

--no-cache[=false]
    do not use a local cache

--no-extra-verify[=false]
    skip additional verification of data before upload (see documentation)

--no-lock[=false]
    do not lock the repository, this allows some operations on read-only repositories

-o, --option=[]
    set extended option (key=value, can be specified multiple times)

--pack-size=0
    set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE)

--password-command=""
    shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)

-p, --password-file=""
    file to read the repository password from (default: $RESTIC_PASSWORD_FILE)

-q, --quiet[=false]
    do not output comprehensive progress report

-r, --repo=""
    repository to backup to or restore from (default: $RESTIC_REPOSITORY)

--repository-file=""
    file to read the repository location from (default: $RESTIC_REPOSITORY_FILE)

--retry-lock=0s
    retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries)

--tls-client-cert=""
    path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)

-v, --verbose[=0]
    be verbose (specify multiple times or a level using --verbose=n``, max level/times is 2)

SEE ALSO

restic(1)