<!-- the client backup id --> <backup id="my_workstation"> <!-- the client backup host, the user under which the servers will connect, the SSH keys used for launching "safekeep -c" and "rdiff-backup" --> <host name="my_box.corp.com" user="root" nice="10" key-ctrl="/home/jdoe/.ssh/backup_id_dsa" key-data="/home/jdoe/.ssh/backup2_id_dsa" /> <!-- location where the backed up data will be stored on the server and for how long (s=sec, m=min, h=hours, D=days, W=weeks, M=months, or Y=years) --> <repo path="./data" retention="10D" /> <!-- settings for database dump and for volume snapshot --> <setup> <!-- database type ("postgres" or "mysql"), user with backup rights, location of the dump file on the client host, and flag to remove or not the dump file after the backup is done --> <dump type="postgres" db="dbname" user="foobar" file="/var/backup/dumps/mydata" cleanup="true" /> <!-- what volume is to be snapshoted (device location) and the size of the snapshot (unallocated space must exist in the volume group) --> <snapshot device="/path/to/volume" size="500M" /> <!-- location of a script to be executed on the client at different stages of the run. It is called with three arguments: the step of the backup, backup id and the backup root directory --> <script path="/path/to/script" /> </setup> <!-- data to be backed up --> <data exclude-fifos="true" exclude-sockets="true"> <!-- each type of tag can be present more than one time --> <!-- if a database dump was created, it must be added in this section --> <include path="/home"/> <exclude path="/home/guest"/> <include glob="**/important/"/> <exclude glob="/home/*/tmp"/> <include regexp=".*\.ogg"/> <exclude regexp=".*\.mp3"/> </data> </backup>