X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;f=dss.ggo;h=e91a4c5b90d4fd7ca015f77bf3264ff06e0e6b03;hb=cbd7c2d1bf41d2c14ace21b75b2362e8b151f99b;hp=25b0d6bdc86ee00a5b487a30297907d511fd220d;hpb=ea63d92f2e18fa9b1488c5eabc8333f84b5728cf;p=dss.git diff --git a/dss.ggo b/dss.ggo index 25b0d6b..e91a4c5 100644 --- a/dss.ggo +++ b/dss.ggo @@ -1,6 +1,6 @@ # package "dss" -version "0.0.2" +version "0.0.3" purpose "the dyadic snapshot scheduler dss creates hardlink-based snapshots of a given directory on a remote @@ -21,24 +21,36 @@ details=" configuration file. As usual, if an option is given both at the command line and in the configuration file, the command line option takes precedence. + + However, there is an important exception to this rule: + If the --run option was given (see below) then dss honors + SIGHUP and re-reads its configuration file whenever it + receives this signal. In this case the options in the config + file override any options that were previously given at the + command line. This allows to change the configuration of a + running dss process on the fly by sending SIGHUP. + + Note that it is not possible to change whether dss runs as + background daemon by sending SIGHUP. " option "daemon" d #~~~~~~~~~~~~~~~~ -"run as background daemon" +"Run as background daemon" flag off dependon="logfile" details=" Note that dss refuses to start in daemon mode if no logfile - was specified. + was specified. This option is mostly useful in conjuction + with the -R option described below. " option "dry-run" D #~~~~~~~~~~~~~~~~~ -"only print what would be done" +"Only print what would be done" flag off details=" - This flag does not makes sense for all commands. The run + This flag does not make sense for all commands. The run command refuses to start if this option was given. The ls command silently ignores this flag. " @@ -49,7 +61,7 @@ section "Logging" option "loglevel" l #~~~~~~~~~~~~~~~~~~ -"set loglevel (0-6)" +"Set loglevel (0-6)" int typestr="level" default="3" optional @@ -59,7 +71,7 @@ details=" option "logfile" - #~~~~~~~~~~~~~~~~~ -"logfile for the dss daemon process" +"Logfile for the dss daemon process" string typestr="filename" optional details=" @@ -77,15 +89,15 @@ required groupoption "create" C #~~~~~~~~~~~~~~~~~~~~~ -"create a new snapshot" +"Create a new snapshot" group="command" details=" - Execute the rsync command to create a new snapshot.Mote that this + Execute the rsync command to create a new snapshot. Note that this command does not care about free disk space. " groupoption "prune" P #~~~~~~~~~~~~~~~~~~~~ -"remove a redundant snapshot" +"Remove a redundant snapshot" group="command" details=" A snapshot is considered redundant if it ether belongs to @@ -96,17 +108,17 @@ details=" groupoption "ls" L #~~~~~~~~~~~~~~~~~ -"print a list of all snapshots" +"Print a list of all snapshots" group="command" details=" - The list will contain all snapshots not matter of their state, - i.e. incomplete snapshots and snapshots being deleted will + The list will contain all snapshots no matter of their state, + i. e. incomplete snapshots and snapshots being deleted will also be listed. " groupoption "run" R #~~~~~~~~~~~~~~~~~~ -"start creating and pruning snapshots" +"Start creating and pruning snapshots" group="command" details=" This is the main mode of operation. Snapshots will be created @@ -117,33 +129,33 @@ details=" section "Rsync-related options" ############################### -option "remote-user" U +option "remote-host" H #~~~~~~~~~~~~~~~~~~~~~ -"remote user name (default: current user)" -string typestr="username" +"Remote host" +string typestr="hostname" +default="localhost" optional details=" - If a user is specified that differs from the user running - dss, then rsync will use ssh for taking snapshots. This will - only work if you set up a key-pair to allow rsync to proceed - without asking for passwords. + If this option is given and its value differs from the local + host, then rsync uses ssh. Make sure there is no password + needed for the ssh connection. To achieve that, use public key + authentication for ssh and, if needed, set the remote user name + by using the --remote-user option. " -option "remote-host" H +option "remote-user" U #~~~~~~~~~~~~~~~~~~~~~ -"remote host" -string typestr="hostname" -default="localhost" +"Remote user name (default: current user)" +string typestr="username" optional details=" - If this option is given and its value differs from the local - host, then rsync uses ssh, so make sure the user running dss - does not need a password to connect to the remote host. + Set this if the user running dss is different from the + user at the remote host when using ssh. " option "source-dir" - #~~~~~~~~~~~~~~~~~~~~ -"the data directory" +"The data directory" string typestr="dirname" optional details=" @@ -154,7 +166,7 @@ details=" option "dest-dir" - #~~~~~~~~~~~~~~~~~~ -"snapshot dir" +"Snapshot dir" string typestr="dirname" optional details=" @@ -165,7 +177,7 @@ details=" option "rsync-option" O #~~~~~~~~~~~~~~~~~~~~~~ -"further rsync options" +"Further rsync options" string typestr="option" optional multiple @@ -176,7 +188,7 @@ details=" option "exclude-patterns" e #~~~~~~~~~~~~~~~~~~~~~~~~~~ -"rsync exclude patterns" +"Rsync exclude patterns" string typestr="path" optional @@ -186,7 +198,7 @@ section "Intervals" option "unit-interval" u #~~~~~~~~~~~~~~~~~~~~~~~ -"the duration of a unit interval" +"The duration of a unit interval" int typestr="days" default="4" optional @@ -196,7 +208,7 @@ details=" \"unit\" interval and the number of those unit intervals. dss removes any snapshots older than the given number of intervals - times the duration of an unit interval and tries to keep the following + times the duration of a unit interval and tries to keep the following number of snapshots per interval: interval number number of snapshots @@ -212,13 +224,13 @@ details=" In other words, the oldest snapshot will at most be unit_interval * num_intervals old (= 5 days * 4 = 20 days if default values are used). Moreover, there are at most 2^num_intervals - 1 snapshots in total - (i.e. 31 by default). Observe that you have to create at least + (i. e. 31 by default). Observe that you have to create at least 2 ^ (num_intervals - 1) snapshots each interval for this to work out. " option "num-intervals" n #~~~~~~~~~~~~~~~~~~~~~~~ -"the number of unit intervals" +"The number of unit intervals" int typestr="num" default="5" optional @@ -257,19 +269,19 @@ details=" " ############################### -section "disk space monitoring" +section "Disk space monitoring" ############################### option "min-free-mb" m #~~~~~~~~~~~~~~~~~~~~~ -"minimal amount of free disk space" +"Minimal amount of free disk space" int typestr="megabytes" default="100" optional details=" - If less that this many megabytes of space is available on + If less than this many megabytes of space is available on the file system containing the destination directory, \"dss - --run\" will stop the currently running rsync process and will + --run\" will suspend the currently running rsync process and will start to remove snapshots, starting from the oldest snapshot, until the free disk space exceeds this value. See also the --min_free_percent option. @@ -280,12 +292,12 @@ details=" option "min-free-percent" p #~~~~~~~~~~~~~~~~~~~~~~~~~~ -"minimal percent of free disk space" +"Minimal percent of free disk space" int typestr="percent" default="2" optional details=" - See --min_free. Note that it is not recommended to set both - --min_fre_mb and --min_free_percent to zero as this will + See --min-free-mb. Note that it is not recommended to set both + --min-free-mb and --min-free-percent to zero as this will cause your file system to fill up quickly. "