restic-copy - Man Page
Copy snapshots from one repository to another
Synopsis
restic copy [flags] [snapshotID ...]
Description
The "copy" command copies one or more snapshots from one repository to another.
NOTE: This process will have to both download (read) and upload (write) the entire snapshot(s) due to the different encryption keys used in the source and destination repositories. This /may incur higher bandwidth usage and costs/ than expected during normal backup runs.
NOTE: The copying process does not re-chunk files, which may break deduplication between the files copied and files already stored in the destination repository. This means that copied files, which existed in both the source and destination repository, /may occupy up to twice their space/ in the destination repository. This can be mitigated by the "--copy-chunker-params" option when initializing a new destination repository using the "init" command.
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. Exit status is 12 if the password is incorrect.
Options
--from-insecure-no-password[=false] use an empty password for the source repository (insecure)
--from-key-hint="" key ID of key to try decrypting the source repository first (default: $RESTIC_FROM_KEY_HINT)
- --from-password-command="" shell command
- to obtain the source repository password from (default: $RESTIC_FROM_PASSWORD_COMMAND)
- --from-password-file="" file
- to read the source repository password from (default: $RESTIC_FROM_PASSWORD_FILE)
- --from-repo="" source repository
- to copy snapshots from (default: $RESTIC_FROM_REPOSITORY)
- --from-repository-file="" file
- from which to read the source repository location to copy snapshots from (default: $RESTIC_FROM_REPOSITORY_FILE)
-h, --help[=false] help for copy
- -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)
- --stuck-request-timeout=5m0s duration
- after which to retry stuck requests
- --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)