From 2ac1ca8d87b8069ad81ea9db1e91679d76f4ff08 Mon Sep 17 00:00:00 2001 From: DatuX Date: Tue, 29 Aug 2023 15:46:33 +0200 Subject: [PATCH] Updated Home (markdown) --- Home.md | 139 +++++++++++++++++++++++++++++++------------------------- 1 file changed, 78 insertions(+), 61 deletions(-) diff --git a/Home.md b/Home.md index 43be45d..150bcd2 100644 --- a/Home.md +++ b/Home.md @@ -328,79 +328,96 @@ After that you can rename the disk image from the temporary location to the loca ## Usage ```console -usage: zfs-autobackup [-h] [--ssh-config CONFIG-FILE] [--ssh-source USER@HOST] [--ssh-target USER@HOST] [--keep-source SCHEDULE] [--keep-target SCHEDULE] [--pre-snapshot-cmd COMMAND] - [--post-snapshot-cmd COMMAND] [--other-snapshots] [--no-snapshot] [--no-send] [--no-thinning] [--no-holds] [--min-change BYTES] [--allow-empty] [--exclude-unchanged] [--exclude-received] - [--strip-path N] [--clear-refreservation] [--clear-mountpoint] [--filter-properties PROPERTY,...] [--set-properties PROPERTY=VALUE,...] [--rollback] [--destroy-incompatible] - [--destroy-missing SCHEDULE] [--ignore-transfer-errors] [--decrypt] [--encrypt] [--zfs-compressed] [--test] [--verbose] [--debug] [--debug-output] [--progress] [--send-pipe COMMAND] - [--recv-pipe COMMAND] [--compress [TYPE]] [--rate DATARATE] [--buffer SIZE] [--snapshot-format FORMAT] [--property-format FORMAT] [--hold-format FORMAT] [--version] - [BACKUP-NAME] [TARGET-PATH] +usage: ZfsAutobackup.py [--help] [--test] [--verbose] [--debug] [--debug-output] [--progress] [--utc] [--version] [--ssh-config CONFIG-FILE] [--ssh-source USER@HOST] [--ssh-target USER@HOST] [--property-format FORMAT] [--snapshot-format FORMAT] [--hold-format FORMAT] [--strip-path N] [--exclude-unchanged BYTES] [--exclude-received] [--no-snapshot] [--pre-snapshot-cmd COMMAND] + [--post-snapshot-cmd COMMAND] [--min-change BYTES] [--allow-empty] [--other-snapshots] [--set-snapshot-properties PROPERTY=VALUE,...] [--no-send] [--no-holds] [--clear-refreservation] [--clear-mountpoint] [--filter-properties PROPERTY,...] [--set-properties PROPERTY=VALUE,...] [--rollback] [--force] [--destroy-incompatible] [--ignore-transfer-errors] + [--decrypt] [--encrypt] [--zfs-compressed] [--compress [TYPE]] [--rate DATARATE] [--buffer SIZE] [--send-pipe COMMAND] [--recv-pipe COMMAND] [--no-thinning] [--keep-source SCHEDULE] [--keep-target SCHEDULE] [--destroy-missing SCHEDULE] + [BACKUP-NAME] [TARGET-PATH] -zfs-autobackup v3.1.1 - (c)2021 E.H.Eefting (edwin@datux.nl) +ZfsAutobackup.py v3.2 - (c)2022 E.H.Eefting (edwin@datux.nl) positional arguments: - BACKUP-NAME Name of the backup (you should set the zfs property "autobackup:backup-name" to true on filesystems you want to backup - TARGET-PATH Target ZFS filesystem (optional: if not specified, zfs-autobackup will only operate as snapshot-tool on source) + BACKUP-NAME Name of the backup to select + TARGET-PATH Target ZFS filesystem (optional) -optional arguments: - -h, --help show this help message and exit - --ssh-config CONFIG-FILE - Custom ssh client config - --ssh-source USER@HOST - Source host to get backup from. - --ssh-target USER@HOST - Target host to push backup to. - --keep-source SCHEDULE - Thinning schedule for old source snapshots. Default: 10,1d1w,1w1m,1m1y - --keep-target SCHEDULE - Thinning schedule for old target snapshots. Default: 10,1d1w,1w1m,1m1y - --pre-snapshot-cmd COMMAND - Run COMMAND before snapshotting (can be used multiple times. - --post-snapshot-cmd COMMAND - Run COMMAND after snapshotting (can be used multiple times. - --other-snapshots Send over other snapshots as well, not just the ones created by this tool. - --no-snapshot Don't create new snapshots (useful for finishing uncompleted backups, or cleanups) - --no-send Don't send snapshots (useful for cleanups, or if you want a serperate send-cronjob) - --no-thinning Do not destroy any snapshots. - --no-holds Don't hold snapshots. (Faster. Allows you to destroy common snapshot.) - --min-change BYTES Number of bytes written after which we consider a dataset changed (default 1) - --allow-empty If nothing has changed, still create empty snapshots. (same as --min-change=0) - --exclude-unchanged Exclude datasets that have no changes since any last snapshot. (Useful in combination with proxmox HA replication) - --exclude-received Exclude datasets that have the origin of their autobackup: property as "received". This can avoid recursive replication between two backup partners. - --strip-path N Number of directories to strip from target path (use 1 when cloning zones between 2 SmartOS machines) - --clear-refreservation - Filter "refreservation" property. (recommended, safes space. same as --filter-properties refreservation) - --clear-mountpoint Set property canmount=noauto for new datasets. (recommended, prevents mount conflicts. same as --set-properties canmount=noauto) - --filter-properties PROPERTY,... - List of properties to "filter" when receiving filesystems. (you can still restore them with zfs inherit -S) - --set-properties PROPERTY=VALUE,... - List of propererties to override when receiving filesystems. (you can still restore them with zfs inherit -S) - --rollback Rollback changes to the latest target snapshot before starting. (normally you can prevent changes by setting the readonly property on the target_path to on) - --destroy-incompatible - Destroy incompatible snapshots on target. Use with care! (implies --rollback) - --destroy-missing SCHEDULE - Destroy datasets on target that are missing on the source. Specify the time since the last snapshot, e.g: --destroy-missing 30d - --ignore-transfer-errors - Ignore transfer errors (still checks if received filesystem exists. useful for acltype errors) - --decrypt Decrypt data before sending it over. - --encrypt Encrypt data after receiving it. - --zfs-compressed Transfer blocks that already have zfs-compression as-is. +Common options: + --help, -h show help --test, --dry-run, -n Dry run, dont change anything, just show what would be done (still does all read-only operations) --verbose, -v verbose output --debug, -d Show zfs commands that are executed, stops after an exception. --debug-output Show zfs commands and their output/exit codes. (noisy) --progress show zfs progress output. Enabled automaticly on ttys. (use --no-progress to disable) + --utc Use UTC instead of local time when dealing with timestamps for both formatting and parsing. To snapshot in an ISO 8601 compliant time format you may for example specify --snapshot-format "{}-%Y-%m-%dT%H:%M:%SZ". Changing this parameter after-the-fact (existing snapshots) will cause their timestamps to be interpreted as a different time than before. + --version Show version. + +SSH options: + --ssh-config CONFIG-FILE + Custom ssh client config + --ssh-source USER@HOST + Source host to pull backup from. + --ssh-target USER@HOST + Target host to push backup to. + +String formatting options: + --property-format FORMAT + Dataset selection string format. Default: autobackup:{} + --snapshot-format FORMAT + ZFS Snapshot string format. Default: {}-%Y%m%d%H%M%S + --hold-format FORMAT ZFS hold string format. Default: zfs_autobackup:{} + --strip-path N Number of directories to strip from target path. + +Selection options: + --exclude-unchanged BYTES + Exclude datasets that have less than BYTES data changed since any last snapshot. (Use with proxmox HA replication) + --exclude-received Exclude datasets that have the origin of their autobackup: property as "received". This can avoid recursive replication between two backup partners. + +Snapshot options: + --no-snapshot Don't create new snapshots (useful for finishing uncompleted backups, or cleanups) + --pre-snapshot-cmd COMMAND + Run COMMAND before snapshotting (can be used multiple times. + --post-snapshot-cmd COMMAND + Run COMMAND after snapshotting (can be used multiple times. + --min-change BYTES Only create snapshot if enough bytes are changed. (default 1) + --allow-empty If nothing has changed, still create empty snapshots. (Same as --min-change=0) + --other-snapshots Send over other snapshots as well, not just the ones created by this tool. + --set-snapshot-properties PROPERTY=VALUE,... + List of properties to set on the snapshot. + +Transfer options: + --no-send Don't transfer snapshots (useful for cleanups, or if you want a separate send-cronjob) + --no-holds Don't hold snapshots. (Faster. Allows you to destroy common snapshot.) + --clear-refreservation + Filter "refreservation" property. (recommended, saves space. same as --filter-properties refreservation) + --clear-mountpoint Set property canmount=noauto for new datasets. (recommended, prevents mount conflicts. same as --set-properties canmount=noauto) + --filter-properties PROPERTY,... + List of properties to "filter" when receiving filesystems. (you can still restore them with zfs inherit -S) + --set-properties PROPERTY=VALUE,... + List of propererties to override when receiving filesystems. (you can still restore them with zfs inherit -S) + --rollback Rollback changes to the latest target snapshot before starting. (normally you can prevent changes by setting the readonly property on the target_path to on) + --force, -F Use zfs -F option to force overwrite/rollback. (Useful with --strip-path=1, but use with care) + --destroy-incompatible + Destroy incompatible snapshots on target. Use with care! (implies --rollback) + --ignore-transfer-errors + Ignore transfer errors (still checks if received filesystem exists. useful for acltype errors) + --decrypt Decrypt data before sending it over. + --encrypt Encrypt data after receiving it. + --zfs-compressed Transfer blocks that already have zfs-compression as-is. + +Data transfer options: + --compress [TYPE] Use compression during transfer, defaults to zstd-fast if TYPE is not specified. (gzip, pigz-fast, pigz-slow, zstd-fast, zstd-slow, zstd-adapt, xz, lzo, lz4) + --rate DATARATE Limit data transfer rate in Bytes/sec (e.g. 128K. requires mbuffer.) + --buffer SIZE Add zfs send and recv buffers to smooth out IO bursts. (e.g. 128M. requires mbuffer) --send-pipe COMMAND pipe zfs send output through COMMAND (can be used multiple times) --recv-pipe COMMAND pipe zfs recv input through COMMAND (can be used multiple times) - --compress [TYPE] Use compression during transfer, defaults to zstd-fast if TYPE is not specified. (gzip, pigz-fast, pigz-slow, zstd-fast, zstd-slow, zstd-adapt, xz, lzo, lz4) - --rate DATARATE Limit data transfer rate (e.g. 128K. requires mbuffer.) - --buffer SIZE Add zfs send and recv buffers to smooth out IO bursts. (e.g. 128M. requires mbuffer) - --snapshot-format FORMAT - Snapshot naming format. Default: {}-%Y%m%d%H%M%S - --property-format FORMAT - Select property naming format. Default: autobackup:{} - --hold-format FORMAT Hold naming format. Default: zfs_autobackup:{} - --version Show version. + +Thinner options: + --no-thinning Do not destroy any snapshots. + --keep-source SCHEDULE + Thinning schedule for old source snapshots. Default: 10,1d1w,1w1m,1m1y + --keep-target SCHEDULE + Thinning schedule for old target snapshots. Default: 10,1d1w,1w1m,1m1y + --destroy-missing SCHEDULE + Destroy datasets on target that are missing on the source. Specify the time since the last snapshot, e.g: --destroy-missing 30d Full manual at: https://github.com/psy0rz/zfs_autobackup ```