borg-delete(1)

Name
borg-delete - Delete an existing repository or archives

SYNOPSIS

borg [common options] delete [options] [REPOSITORY_OR_ARCHIVE] [ARCHIVE...]

DESCRIPTION

This command deletes an archive from the repository or the complete repository.

Important: When deleting archives, repository disk space is not freed until you run borg compact.

When you delete a complete repository, the security info and local cache for it (if any) are also deleted. Alternatively, you can delete just the local cache with the --cache-only option, or keep the security info with the --keep-security-info option.

When in doubt, use --dry-run --list to see what would be deleted.

When using --stats, you will get some statistics about how much data was deleted - the "Deleted data" deduplicated size there is most interesting as that is how much your repository will shrink. Please note that the "All archives" stats refer to the state after deletion. --stats can be slow - if you want something faster, use --quick-stats (this skips the repository-wide "All archives" statistics). The --stats / --quick-stats and --dry-run options are mutually exclusive.

You can delete multiple archives by specifying a shell pattern to match multiple archives using the --glob-archives GLOB option (for more info on these patterns, see borg_patterns).

To avoid accidentally deleting archives, especially when using glob patterns, it might be helpful to use the --dry-run to test out the command without actually making any changes to the repository.

OPTIONS

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

  arguments

REPOSITORY_OR_ARCHIVE
    repository or archive to delete

ARCHIVE
    archives to delete

  options

-n, --dry-run
    do not change repository

--list
    output verbose list of archives

-s, --stats
    print statistics for the deleted archive

--quick-stats
    print only deletion statistics, skipping repository-wide statistics

--cache-only
    delete only the local cache for the given repository

--force
    force deletion of corrupted archives, use --force --force in case --force does not work.

--keep-security-info
    keep the local security info when deleting a repository

--save-space
    work slower, but using less space

-c SECONDS, --checkpoint-interval SECONDS
    write checkpoint every SECONDS seconds (Default: 1800)

  Archive filters

-P PREFIX, --prefix PREFIX
    only consider archive names starting with this prefix. (deprecated)

-a GLOB, --glob-archives GLOB
    only consider archive names matching the glob. sh: rules apply (without actually using the sh: prefix), see "borg help patterns".

--sort-by KEYS
    Comma-separated list of sorting keys; valid keys are: timestamp, archive, name, id; default is: timestamp

--first N
    consider first N archives after other filters were applied

--last N
    consider last N archives after other filters were applied

EXAMPLES

    # delete a single backup archive:
    $ borg delete /path/to/repo::Monday
    # actually free disk space:
    $ borg compact /path/to/repo
    # delete all archives whose names begin with the machine's hostname followed by "-"
    $ borg delete --glob-archives '{hostname}-*' /path/to/repo
    # delete all archives whose names contain "-2012-"
    $ borg delete --glob-archives '*-2012-*' /path/to/repo
    # see what would be deleted if delete were run without --dry-run
    $ borg delete --list --dry-run -a '*-May-*' /path/to/repo
    # delete the whole repository and the related local cache:
    $ borg delete /path/to/repo
    You requested to completely DELETE the repository *including* all archives it contains:
    repo                                 Mon, 2016-02-15 19:26:54
    root-2016-02-15                      Mon, 2016-02-15 19:36:29
    newname                              Mon, 2016-02-15 19:50:19
    Type 'YES' if you understand this and want to continue: YES

SEE ALSO

borg-common(1), borg-compact(1)

Author
The Borg Collective