SYNCOID(8)

NAME
syncoid - a tool to facilitates the asynchronous incremental replication of ZFS filesystems.

DESCRIPTION

  Usage:

    syncoid [options]... SOURCE TARGET or syncoid [options]... SOURCE [[USER]@]HOST:TARGET or syncoid [options]... [[USER]@]HOST:SOURCE TARGET or syncoid [options]... [[USER]@]HOST:SOURCE [[USER]@]HOST:TARGET

SOURCE
    Source ZFS dataset. Can be either local or remote

TARGET
    Target ZFS dataset. Can be either local or remote

    Options:

--compress=FORMAT
    Compresses data during transfer. Currently accepted options are gzip, pigz-fast, pigz-slow, zstd-fast, zstd-slow, lz4, xz, lzo (default) & none

--identifier=EXTRA
    Extra identifier which is included in the snapshot name. Can be used for replicating to multiple targets.

--recursive|r
    Also transfers child datasets

--skip-parent
    Skips syncing of the parent dataset. Does nothing without '--recursive' option.

--source-bwlimit=<limit k|m|g|t>
    Bandwidth limit in bytes/kbytes/etc per second on the source transfer

--target-bwlimit=<limit k|m|g|t>
    Bandwidth limit in bytes/kbytes/etc per second on the target transfer

--mbuffer-size=VALUE
    Specify the mbuffer size (default: 16M), please refer to mbuffer(1) manual page.

--pv-options=OPTIONS
    Configure how pv displays the progress bar, default '-p -t -e -r -b'

--no-stream
    Replicates using newest snapshot instead of intermediates

--no-sync-snap
    Does not create new snapshot, only transfers existing

--keep-sync-snap
    Don't destroy created sync snapshots

--create-bookmark
    Creates a zfs bookmark for the newest snapshot on the source after replication succeeds (only works with --no-sync-snap)

--use-hold
    Adds a hold to the newest snapshot on the source and target after replication succeeds and removes the hold after the next successful replication. The hold name includes the identifier if set. This allows for separate holds in case of multiple targets

--preserve-recordsize Preserves the recordsize on initial sends to the target

--preserve-properties Preserves locally set dataset properties similar to the zfs send -p flag but this one will also work for encrypted datasets in non raw sends

--no-rollback
    Does not rollback snapshots on target (it probably requires a readonly target)

--delete-target-snapshots With this argument snapshots which are missing on the source will be destroyed on the target. Use this if you only want to handle snapshots on the source.

--exclude=REGEX
    Exclude specific datasets which match the given regular expression. Can be specified multiple times

--sendoptions=OPTIONS Use advanced options for zfs send (the arguments are filtered as needed), e.g. syncoid --sendoptions="Lc e" sets zfs send -L -c -e ...

--recvoptions=OPTIONS Use advanced options for zfs receive (the arguments are filtered as needed), e.g. syncoid --recvoptions="ux recordsize o compression=lz4" sets zfs receive -u -x recordsize -o compression=lz4 ...

--sshconfig=FILE
    Specifies an ssh_config(5) file to be used

--sshkey=FILE
    Specifies a ssh key to use to connect

--sshport=PORT
    Connects to remote on a particular port

--sshcipher|c=CIPHER
    Passes CIPHER to ssh to use a particular cipher set

--sshoption|o=OPTION
    Passes OPTION to ssh for remote usage. Can be specified multiple times

--insecure-direct-connection=IP:PORT[,IP:PORT]
    WARNING: DATA IS NOT ENCRYPTED. First address pair is for connecting to the target and the second for listening at the target

--help
    Prints this helptext

--version
    Prints the version number

--debug
    Prints out a lot of additional information during a syncoid run

--monitor-version
    Currently does nothing

--quiet
    Suppresses non-error output

--dumpsnaps
    Dumps a list of snapshots during the run

--no-command-checks
    Do not check command existence before attempting transfer. Not recommended

--no-resume
    Don't use the ZFS resume feature if available

--no-clone-handling
    Don't try to recreate clones on target

--no-privilege-elevation
    Bypass the root check, for use with ZFS permission delegation

--force-delete
    Remove target datasets recursively, if there are no matching snapshots/bookmarks (also overwrites conflicting named snapshots)