Please see rsbackup in git for detailed change history.
--open-noatime
to rsync by default. Fixes issue #101.rsbackup-snapshot-hook
now uses dmsetup
rather than udevadm
to query logical volumes, which should stop it spuriously rejecting some of them. Fixes issue #72.rsbackup-snapshot-hook
should now cope with volume group names containing hyphens..nolink
file.rsync-timeout
, the old name for backup-job-timeout
, has been removed.--check-unexpected
option lists unexpected files found on backup devices. Fixes issue #95.--latest
option to find the latest available backup. Fixes issue #92.pre-
and post-access-hook
must be replaced with pre-
and post-device hook
, and pre-
and post-backup-hook
must be replaced with pre-
and post-volume-hook
.decay-limit
, decay-start
, decay-window
, hook-timeout
, keep-prune-logs
, max-age
, min-interval
, prune-age
, prune-logs
, rsync-timeout
and ssh-timeout
now require the units suffix introduced in release 7.0.rsync-remote
directive allows control over the remote rsync command.rsync --link-dest
option is used in a more subtle way. The most recent complete backup is always used if possible, but if there are more recent incomplete backups then the latest of those is used as well. Fixes issue #77.decay-scale
prune parameter is no longer constrained to be an integer. Fixes issue #87.rsync-timeout
directive has been renamed backup-job-timeout
. Advance warning: In some future version the old name will be removed.rsync-io-timeout
directive is added, corresponding to the rsync --timeout
directive. Fixes issue #80.rsbackup-graph --fonts
will list known font families. Fixes issue #81.--forget-only
improved. Fixes issue #90.prune-timeout
directive only generate diagnostics if --verbose
is used. Fixes issue #89.rsbackup.cron
removed. Fixes issue #88.--force
option is extended to override backup policies./etc/rsbackup/defaults
, the hourly
, daily
, weekly
and monthly
settings are gone. Instead, use backup policies. Fixes issue #59.pre
,post
)-
(device
,volume
)-hook
. Advance warning: In some future version the old names will be removed.pre-volume-hook
and post-volume-hook
can be suppressed (e.g. in a volume that has inherited a hook from its host) by passing an empty command.. Fixes issue #71.RSBACKUP_STATUS
, RSBACKUP_DEVICE
and RSBACKUP_STORE
are no longer provided to volume hooks. pre-volume-hook
output is no longer logged as part of a backup record.pre-volume-hook
is now run only once, before all backups of a volume, and post-volume-hook
is now run only once, after all backups of a volume. Fixes issue #17.rsync-link-dest
directive allows use of the rsync --link-dest
option to be suppressed, for instance to deal with volumes which only have constantly changing files. Fixes issue #70.decay-limit
, decay-start
, decay-window
, hook-timeout
, keep-prune-logs
, max-age
, min-interval
, prune-age
, prune-logs
, rsync-timeout
and ssh-timeout
now include a units suffix. Advance warning: In some future version the suffix will be mandatory.prune-timeout
directive allows an upper bound to be placed on the amount of time spent pruning, to avoid pruning 'crowding out' other activity. Fixes issue #66.always-up
directive has been removed. Instead, use host-check always-up
.min-backups
and prune-age
directives have been removed. Instead, use prune-parameter min-backups
and prune-parameter prune-age
.public
, always-up
and check-mounted
directives are now mandatory.colors
and report-prune-logs
directives have been removed. Use colors-good
, colors-bad
and report
instead.exec
prune policy now uses absolute timestamps instead of ages. This is a side-effect of fixing issue #49 (see below).group
directive for fine-grained control and issue #18 for discussion.data:
URLs. This improves interoperability with GMail. Fixes issue #54.database
directive controls the database filename. Fixes issue #55.backup-policy
directive for fine-grained control over backup frequency. The default remains one backup per day but backup filenames have changed to reflect the possibility of more than one. Fixes issue #49.store
and store-pattern
in rsbackup(5) and --unmounted-store
in rsbackup(1) for options to restore the previous behavior. Fixes issue #42./var/lib/rsbackup/snapshots
. Fixes issue #28. If you use snapshots you must adjust your configuration.host-check
directive controlling how to test whether hosts are up or down. Fixes issue #26. always-up
directive is now deprecated and will produce a warning. In some future version it will be removed.rsync
, and are not supported by the version installed under macOS; also this feature can also cause some trouble with Windows filesystems. Set the rsync-extra-options
as discussed in rsbackup(5) to work around this. Fixes issue #37 and issue #41.--retire
option now always requests confirmation from the user. Fixes issue #38.--forget-only
option used with --retire
to drop database records for backups without deleting the backups themselves. Fixes issue #41.pre-backup-hook
scripts may now exit with a distinct exit status to indicate a transient failure, equivalent to a check-file
or check-mounted
test failing. Addresses issue #43.rsbackup-graph
, has been introduced. This generates a graphical representation of available backups.colors
directive is now split into colors-good
and colors-bad
which can take either RGB or HSV parameters. colors
directive is now deprecated and will produce a warning. In some future version it will be removed.report
directive. report-prune-logs
directive is now deprecated and will produce a warning. In some future version it will be removed..deb
build. Fixes Debian bug #793716..deb
is removed. Fixes Debian bug #810335.install
rather than cp
during .deb
builds..deb
build dependencies.PRUNING
section of the man page for further information. The default behavior matches previous versions. Fixes issue #7. min-backups
and prune-age
directives are now deprecated in their current form and will produce a warning. In some future version they will be removed. Instead, use prune-parameter min-backups
and prune-parameter prune-age
.public
, always-up
, check-mounted
and traverse
directives now take an explicit boolean argument. Using them without an argument is now deprecated (but has not changed in meaning). In some future version the argument will become mandatory.rsync-timeout
and hook-timeout
directives are now inherited, as documented. ssh-timeout
becomes inherited too. The sendmail
directive is now documented.-
”.--dump-config --verbose
now annotates its output. Some options missed by --dump-config
are now output.rsbackup.cron
will always run the prune and report steps, even if the earlier steps fail.rsbackup-snapshot-hook
copes better with aliases for logical volumes. Fixes issue #23.report-prune-logs
configuration setting.--dry-run
mode. The environment variables RSBACKUP_ACT
can be used by the script to distinguish the two situations. rsbackup-snapshot-hook
has been modified accordingly. Fixes issue #9.check-mounted
option verifies that a volume is mounted before backing it up. Fixes issue #13.store-pattern
option allows stores to be specified by a glob pattern instead of individually. Fixes issue #5.stylesheet
and colors
options allow operator control of the stylesheet and coloration in the HTML version of the report. Fixes issue #6.lock
are now documented. Fixes issue #20.rsbackup
no longer depend on Bash.priority
option. Fixes issue #19.always-up
option is slightly modified: backups of always-up hosts are attempted, resulting in error logs, even if they do not seem to be available. Fixes issue #22.--database
option allows the path to the database to be overridden.--dump-config
option.rsbackup.cron
when it has been removed. Fixes Debian bug #766455.--store
are now more accurate. Fixes issue #10.include
command now skips filenames that start with #
. Fixes issue #12.rsbackup-snapshot-hook
no longer fails if fsck
finds and fixes errors. It is also now tested. Fixes issue #15.--dump-config
option to verify configuration file parse.--check
option to rsbackup-mount
.--force
option no longer implies the --verbose
option. (This was a bug.)RSBACKUP_STATUS
value passed to post-backup hook. (Bug spotted by Jacob Nevins.)--retire
no longer fails if a host directory has already been removed.rsbackup
as some other operation.--html
option (Jon Amery).--prune-incomplete
option, which wouldn't work in the absence of some other option (Jacob Nevins).pre-access-hook
and post-access-hook
options support running “hook” scripts before and after any access to backup storage devices.pre-backup-hook
and post-backup-hook
options support running “hook” scripts before and after a backup. Although these can be used for any purpose, the motivation is to enable the creation of LVM snapshots of the subject filesystems (and their destruction afterwards), resulting in more consistent backups. The supplied hook script only knows about the Linux logical volume system.devices
option allows a host or volume to be restricted to a subset of devices, identified by a filename glob pattern.rsync-timeout
option allows a time limit to be imposed on a backup.check-file
option allows backups of a volume to be suppressed when it is not available (for instance, because it is only sometimes mounted).--verbose
(and therefore --dry-run
) is now more verbose.--text
and --html
now accept -
to write to standard output.rsbackup-mount
now supports unencrypted devices and separate key material files (contributed by Matthew Vernon).--prune
honours command-line selections again.--logs
option controls which logfiles are included in the HTML report. The default is to only include the logfile of the most recent backup if it failed. Also, if the most recent attempt to backup a volume to a given device failed, its heading is highlighted (in red).--version
options. Single-letter command line options are now supported (in fact they existed in many cases already but weren’t documented)..
and ..
..incomplete
files used by the Perl script to indicate partial backups are now created by the C++ version too. They are created both before starting a backup and before pruning it. rsbackup itself does not rely on them itself but they are an important hint to the operator when doing bulk restores.--no-errors
option.--warn-store
is given, but if no configured store is present then the problems found with all configured stores are listed. The documentation on how to set up stores has also been clarified.rsbackup
has been rewritten in C++. The behaviour is largely same except as follows:
--text
option generates a plaintext version of the report. In addition the email report includes both the text and HTML versions.--prune-unknown
is removed. It is replaced by --retire
, which is used to remove backups of volumes (and hosts) that are no longer in use and --retire-device
which is used to remove logs for devices that are no longer in use.rsync
command now includes the --delete
option, meaning that interrupted backups no longer include stray files from the first attempt..incomplete
files are no longer created. Instead the logs are used to distinguish complete from incomplete backups.--warn-
options to control what is warned about.always-up
option to indicate that a host is expected to always be available to back up.