Releases: Jehops/zap
Fix 0.8.2 syntax bug and replicate with the raw flag (-w) to support encrypted datasets.
- The bug was a syntax error (reported by @sevmonster).
- The raw flag is only supplied when the ZFS system supports encrypted datasets (reported by David Samms and @sevmonster).
Fix timestamp issue on Busybox and add remote filter option, other fixes
- fix timestamp issue when using busybox
- Redirect to &2 rather than stderr.
- Replace 'echo -n' with 'printf'
- Add remote filter option
For example, users can set the environment variable
ZAP_FILTER_REMOTE="mbuffer -s 128k -m 5M
and zap will filter 'zfs receive' on the remote location through mbuffer.
Add filter support for replication
For example, users can set the environment variable
ZAP_FILTER="mbuffer -s 128k -m 10M"
and zap will filter 'zfs send' and 'zfs receive' through mbuffer.
Replication tweaks
Notable changes since last release:
- Explicitly set
zap:snap
andzap:rep
tooff
on replicated datasets - Do not replicate if the destination dataset has
zap:snap
on - Make it a fatal error if hostname cannot be found
- Add new flags (-Lce) to zfs send
- Support local replication (without ssh)
Improvements when top-level dataset without '/' is specified for replication
- Ensure dataset name is empty when pool is specified for replication
- Add remote snapshot name to warning when local snap/bm is missing
- Use 1>&2 instead of redirecting to /dev/stderr
- For issue #8, check if the youngest remote snapshot is from
zap
Bug fix release
User-facing changes:
- Fix a replication bug that occurred when the remote shell was tcsh by always interpreting remote commands with sh
Internal changes of note:
- Use extended regular expressions in some cases
- Use parameter expansions instead of piping to cut when possible
Improve documentation
- Simplify examples and emphasize usage with zfs properties
- Do not suggest using /etc/crontab
Fix issue when destroying snapshot of top-level dataset
To extract the pool name from a snapshot name, a parameter expansion was removing everything after '/'. However, the top-level dataset contains no '/' in its name (its name is the same as the pool's name). This means the entire snapshot name was being incorrectly returned for the name of the pool.
This release fixes the parameter expansion to handle the case when the dataset name contains no '/'.
This issue was reported by Michael Wayne.
Operate by default on snapshots when the pool is DEGRADED
The -d
option has been removed since it is now the default and the -D
option has been added.
For replication, add -F flag and set remote canmount from 'on' to 'noauto'
-
The -F flag is supplied to zfs receive, which destroys remote changes that do not exist on the sending side.
-
If the canmount property of the local dataset is set to 'on', after replication an attempt is made to set canmount to 'noauto' on the remote side. This is done to prevent mountpoint collisions.
Credit do David Samms dsamms@nw-ds.com, who identified issues and submitted a patch for part of these changes.