% zelta-rebase(8) | System Manager's Manual
zelta rebase - rebase a dataset onto an upgraded upstream while preserving local files
zelta rebase [OPTIONS] upstream target
zelta rebase replaces a production dataset with a new dataset based on an upgraded upstream while preserving incremental backup continuity and local files.
The old target is automatically renamed out of the way using its clone origin snapshot name, and the new upstream is received at the original target name. If a preserve file is found, specified local files are copied from the old target into the new one.
This is useful for image, template, appliance, and development workflows where local changes must move forward onto a newer upstream base without forcing a full backup history restart.
upstream
: Upgraded base dataset. If a snapshot is specified (e.g., pool/dataset@snap), that snapshot is used; otherwise the latest snapshot is used.
target
: Current production dataset to rebase.
--rebase-file file
: Override the default preserve file path. If not specified, zelta rebase looks for .zelta-rebase.preserve in the upstream dataset's mountpoint.
-n, --dryrun, --dry-run
: Display underlying commands without executing them.
-v, --verbose
: Increase verbosity. Specify once for operational detail, twice for debug output.
-q, --quiet
: Decrease log output.
The upstream dataset may contain a .zelta-rebase.preserve file listing paths relative to the dataset mountpoint to copy from the old target into the new target.
Resolution order:
Rebase a production dataset onto the latest upstream snapshot:
zelta rebase apool/jails/base cpool/jails/web01
Rebase onto a specific snapshot:
zelta rebase apool/jails/base@freebsd14.2-p1 cpool/jails/web01
Use an external preserve file:
zelta rebase --rebase-file /etc/jails/web01.preserve apool/jails/base cpool/jails/web01
Returns 0 on success, non-zero on error.
The old target is renamed to target_origin-snapshot, where origin-snapshot is the name of the snapshot from which the target was originally cloned.
Use zelta match before and after rebasing to confirm lineage and backup state.
zelta(8), zelta-backup(8), zelta-match(8), zelta-clone(8), zelta-rotate(8), zelta-options(7), ssh(1), zfs(8)
Daniel J. Bell <bellhyve@zelta.space>