X-Git-Url: http://git.tuebingen.mpg.de/?p=dss.git;a=blobdiff_plain;f=INSTALL;h=a99abead6bc3ef9a5bdbafb64c82c42b21a6d1e0;hp=bebfe05f5e50cad84c138a38a26ba85697a2c126;hb=b76728084d7b36d55e08764c9de42ad59fd6f6fd;hpb=40aebcfaecb7ad2414794d4a3f41e0603c08a6e1 diff --git a/INSTALL b/INSTALL index bebfe05..a99abea 100644 --- a/INSTALL +++ b/INSTALL @@ -2,60 +2,89 @@ 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. -In order to create snapshots of the existing directory +Examples: +--------- - /tmp/foo +Suppose you'd like to create snapshots of the existing directory + + /foo/bar in the directory - /tmp/bar, + /baz/qux. -execute the commands +Create the config file - mkdir /tmp/bar - ./dss --run --source-dir /tmp/foo --dest-dir /tmp/bar + ~/.dssrc -To print a list of all snapshots created so far, use +that contains the values for the source and the destination directories +as follows: - ./dss --list --source-dir /tmp/foo --dest-dir /tmp/bar + echo 'source-dir "/foo/bar"' > ~/.dssrc + echo 'dest-dir "/baz/qux"' >> ~/.dssrc -You might want to create the config file +Then execute the commands - ~/.dssrc + mkdir /baz/qux + dss --run -that contains the values for the source and the destination -directories. In the above example, this file would contain the -following lines: +In order to print the list of all snapshots created so far, use - source-dir "/tmp/foo" - dest-dir "/tmp/bar" + dss --ls -Using a configuration file allows you to simply type +Yes, it's really that easy. - ./dss --run +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. -to start snapshot creation and + 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" - ./dss --list +The /etc/dss.exclude file could look like this (see rsync(1) for +more examples) -to list all avalable snapshots. + + - /proc + - /**/tmp/ -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.