NAME
desync-tar - Store a directory tree in a catar archive or index
SYNOPSIS
desync tar <catar|index> <source> [flags]
DESCRIPTION
Encodes a directory tree into a catar archive or alternatively an index file with the archive chunked into a store. Use '-' to write the output, catar or index to STDOUT.
If the desired output is an index file (caidx) rather than a catar, the -i option can be provided as well as a store. Using -i is equivalent to first using the tar command to create a catar, then the make command to chunk it into a store and produce an index file. With -i, less disk space is required as no intermediary catar is created. There can however be a difference in performance depending on file size.
By default, input is read from local disk. Using --input-format=tar, the input can be a tar file or a stream from STDIN with '-'.
OPTIONS
--ca-cert=""
trust authorities in this file, instead of OS trust store
-r, --cache-repair[=true]
replace invalid chunks in the cache from source
-m, --chunk-size="16:64:256"
min:avg:max chunk size in kb
--client-cert=""
path to client certificate for TLS authentication
--client-key=""
path to client key for TLS authentication
-n, --concurrency=10
number of concurrent goroutines, -1 to let desync choose: the number of CPUs for chunking and hashing, adapting to each store up to 128 for transfers
-e, --error-retry=3
number of times to retry in case of network error
-b, --error-retry-base-interval=500ms
initial retry delay, increases linearly with each subsequent attempt
-h, --help[=false]
help for tar
-i, --index[=false]
create index file (caidx), not catar
--input-format="disk"
input format, 'disk' or 'tar'
--no-time[=false]
set file timestamps to zero in the archive
-x, --one-file-system[=false]
don't cross filesystem boundaries
-s, --store=""
target store (used with -i)
--tar-add-root[=false]
pretend that all tar elements have a common root directory
-t, --trust-insecure[=false]
trust invalid certificates
OPTIONS INHERITED FROM PARENT COMMANDS
--config=""
config file (default $HOME/.config/desync/config.json)
--digest="sha512-256"
digest algorithm, sha512-256 or sha256
--verbose[=false]
verbose mode
EXAMPLE
desync tar documents.catar $HOME/Documents desync tar -i -s /path/to/local pics.caidx $HOME/Pictures
SEE ALSO
HISTORY
20-Oct-2026 Auto generated by spf13/cobra