X-Git-Url: http://git.tuebingen.mpg.de/?p=dss.git;a=blobdiff_plain;f=dss.ggo;h=6ac2a39d12b9eb24bd36865a7554a24b252f94af;hp=9587dd24c7b11a439b2c63335ba922361e1cf988;hb=d13861de884e6d76fb854d1869e7c4373d619b6e;hpb=15eb99dcf9a30f8c8d488d5bc3c92130cf828d60 diff --git a/dss.ggo b/dss.ggo index 9587dd2..6ac2a39 100644 --- a/dss.ggo +++ b/dss.ggo @@ -3,7 +3,7 @@ # Licensed under the GPL v2. For licencing details see COPYING. package "dss" -version "0.1.5" +version "0.1.6" purpose "the dyadic snapshot scheduler dss creates hardlink-based snapshots of a given directory on a remote @@ -38,14 +38,12 @@ option "daemon" d #~~~~~~~~~~~~~~~~ "Run as background daemon" flag off -dependon="logfile" details=" - Note that dss refuses to start in daemon mode if no logfile - was specified. This option is mostly useful in conjuction - with the -R option described below. + This option is mostly useful in conjunction with the -R option + described below. - Note that it is not possible to change whether dss runs as - background daemon by sending SIGHUP. + Note that it is not possible to change whether dss runs as background + daemon by sending SIGHUP. " option "dry-run" D @@ -77,10 +75,14 @@ option "logfile" - "Logfile for the dss daemon process" string typestr="filename" optional +default="/dev/null" details = " This option is only honored if both --run and --daemon are - given. Otherwise it is silently ignored and log output is - written to stderr. + given. Otherwise it is silently ignored and log output is written + to stderr. + + The default value means that nothing will be logged in daemon mode + unless this option is given. " ################## @@ -244,6 +246,26 @@ details=" --rsync-option --exclude --rsync-option /proc " +option "max-rsync-errors" - +"Terminate after this many rsync failures" +int typestr="count" +default="10" +optional +details=" + Only relevant when operating in --run mode (see above). If + the rsync process exits with a fatal error, dss restarts + the command in the hope that the problem is transient + and subsequent rsync runs succeed. After the given number + of consecutive rsync error exits, however, dss gives up, + executes the exit hook and terminates. Set this to zero if + dss should exit immediately on the first rsync error. + + The only non-fatal error is when rsync exits with code 24. This + indicates a partial transfer due to vanished source files + and happens frequently when snapshotting a directory which + is concurrently being modified. +" + ################### section "Intervals" ################### @@ -255,22 +277,21 @@ int typestr="days" default="4" optional details=" - dss snapshot aging is implemented in terms of intervals. There - are two command line options related to intervals: the - duration u of a \"unit\" interval and the number n of those - unit intervals. - - dss removes any snapshots older than n times u and tries to - keep 2^(n - k - 1) snapshots in interval k, where the interval - number k counts from zero, zero being the most recent unit - interval. - - In other words, the oldest snapshot will at most be u * n days - (= 20 days if default values are used) old. Moreover, there - are at most 2^n - 1 snapshots in total (i. e. 31 by default). - Observe that you have to create at least 2^(n - 1) snapshots - each interval for this to work out because that is the number - of snapshots in interval zero. + Snapshot aging is implemented in terms of intervals. There are two + command line options related to intervals: the duration u of a unit + interval and the number of unit intervals, denoted n below. + + dss removes snapshots older than n times u and tries to keep 2^(n - + k - 1) snapshots in interval k, where the interval number k counts + from zero to n - 1, with zero being the most recent unit interval. + + Hence the oldest snapshot will at most be u * n days old (4 days * + 5 intervals = 20 days, if default values are used). Moreover, there + are at most 2^n - 1 snapshots in total (2^5 - 1 = 31 by default). Note + that for this to work out your system must be fast enough to create at + least 2^(n - 1) snapshots per unit interval (16 snapshots in 4 days = + one snapshot in 6 hours), because this is the number of snapshots in + interval zero. " option "num-intervals" n @@ -279,6 +300,10 @@ option "num-intervals" n int typestr="num" default="5" optional +details=" + Note that increasing this number by one doubles the total number of + snapshots. See the documentation of --unit-interval above. +" ############### section "Hooks" @@ -431,13 +456,10 @@ option "keep-redundant" k "Prune by disk space only" flag off details=" - If this flag is not given dss removes redundant and outdated - snapshots automatically. - - Otherwise, this feature is deactivated so that snapshots are - only being removed in case disk space or number of free inodes - becomes low. Use this flag if the file system containing the - destination directory is used for snapshots only. + By default, redundant and outdated snapshots are removed automatically + to keep the number of snapshots in harmony with the configured + policy. If this flag is given, dss removes such snapshots only if + disk space or number of free inodes becomes low. " option "min-complete" -