str.c: Get rid of VSPRINTF macro.
[dss.git] / INSTALL
diff --git a/INSTALL b/INSTALL
index 58a03fbae85a5e73962d53b2fa3364c6e9c47bf8..a99abead6bc3ef9a5bdbafb64c82c42b21a6d1e0 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -2,18 +2,29 @@ Type
 
        make
 
-in the dss source directory to build the dss executable. You
-likely need a recent version of gnu gengetopt,
-ftp://ftp.gnu.org/pub/gnu/gengetopt/, to compile dss.
+in the dss source directory to build the dss executable and copy it to
+some directory that is included in your PATH, e.g. to $HOME/bin or to
+/usr/local/bin.
+
+Note that you'll likely need a recent version of
+ftp://ftp.gnu.org/pub/gnu/gengetopt/ (gnu gengetopt) to compile dss.
+
+Optionally, type
+
+        make man
+
+to create the man page of dss. This invokes help2man so make sure
+that help2man is installed on your system. Note that the man page is
+just the nroff variant of the output of "dss --detailed-help".
 
 dss is known to compile on Linux, MacOS, Solaris, FreeBSD and
-NetBSD. However, it is run-tested on Linux only.
+NetBSD. However, it is run-tested only on Linux.
 
-Also make sure that rsync, http://rsync.samba.org/, is installed on
+Also make sure that http://rsync.samba.org/ (rsync) is installed on
 your system. Version 2.6.1 or newer is required.
 
-Example:
---------
+Examples:
+---------
 
 Suppose you'd like to create snapshots of the existing directory
 
@@ -36,21 +47,44 @@ as follows:
 Then execute the commands
 
        mkdir /baz/qux
-       ./dss --run
+       dss --run
 
 In order to print the list of all snapshots created so far, use
 
-       ./dss --list
+       dss --ls
+
+Yes, it's really that easy.
+
+The second example involves a slightly more sophisticated config file.
+It instructs dss to exclude everything which matches at least one
+pattern of the given exclude file, prevents rsync from crossing file
+system boundaries and increases the number of snapshots.
+
+       source-dir "/foo/bar"
+       dest-dir "/baz/qux"
+       # exclude files matching patterns in /etc/dss.exclude
+       rsync-option "--exclude-from=/etc/dss.exclude"
+       # don't cross filesystem boundaries
+       rsync-option "--one-file-system"
+       # maintain 2^6 - 1 = 63 snaphots
+       num-intervals "6"
+
+The /etc/dss.exclude file could look like this (see rsync(1) for
+more examples)
+
+        - /proc
+        - /**/tmp/
 
-Yes, it's really that easy. Of course, dss supports many more
-features and config options such as taking snapshots from remote
-hosts and several hooks that are executed whenever on certain events,
-for example whenever a snapshot was created successfully.  Try
+Note that dss supports many more features and config options such
+as taking snapshots from remote hosts and several hooks that are
+executed on certain events, for example whenever a snapshot was
+created successfully. Try
 
-       ./dss -h
+       dss -h
 
 for an overview of all supported command line options or
 
-       ./dss --detailed-help
+       dss --detailed-help
 
 for the full help text.