restic backup(1)

NAME

restic-repair-snapshots - Repair snapshots

SYNOPSIS

restic repair snapshots [flags] [snapshot ID] [...]

DESCRIPTION

The "repair snapshots" command repairs broken snapshots. It scans the given snapshots and generates new ones with damaged directories and file contents removed. If the broken snapshots are deleted, a prune run will be able to clean up the repository.

The command depends on a correct index, thus make sure to run "repair index" first!

WARNING

Repairing and deleting broken snapshots causes data loss! It will remove broken directories and modify broken files in the modified snapshots.

If the contents of directories and files are still available, the better option is to run "backup" which in that case is able to heal existing snapshots. Only use the "repair snapshots" command if you need to recover an old and broken snapshot!

EXIT STATUS

Exit status is 0 if the command was successful. Exit status is 1 if there was any error. Exit status is 10 if the repository does not exist. Exit status is 11 if the repository is already locked.

OPTIONS

-n, --dry-run[=false]
    do not do anything, just print what would be done

--forget[=false]
    remove original snapshots after creating new ones

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

-H, --host=[]
    only consider snapshots for this host (can be specified multiple times) (default: $RESTIC_HOST)

--path=[]
    only consider snapshots including this (absolute) path (can be specified multiple times, snapshots must include all specified paths)

--tag=[]
    only consider snapshots including tag[,tag,...] (can be specified multiple times)

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)

--http-user-agent=""
    set a http user agent for outgoing http requests

--insecure-no-password[=false]
    use an empty password for the repository, must be passed to every restic command (insecure)

--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-repair(1)