# Config file for rdiff-image programs. See rdiff-image.conf(5). # # Format of the lines is: # # keyword: value # # Usually value is a pathname. Pathnames can not contain spaces, there can # only be one, and it must be absolute. It can contain shell globs if the # keyword is allowed to appear multiple times. The shell globs will match # files whose names start with '.'. # # Example configuration lines start "#; " # # What to backup # -------------- # # backup: pathname # rdiff-image-backup.sh is to backup this directory. The backup will # not cross file systems. Multiple directories can be backed up. # # work: pathname # rdiff-image-backup and rdiff-image-cron use the directory # pathname to store information between runs, and as a scratch # area during runs. It must exist. Erasing all files in this # directory will cause new full backups to be created. This # option must appear exactly once and it must be unique across # all rdiff-image.conf files. # backup: / work: /var/lib/rdiff-image # Modifying the data backed up # ---------------------------- # # add: pathname # rdiff-image-backup.sh adds all files in under the given directory, but # strips the directory name given. Eg, if /etc/dummy contained: # /etc/dummy/foo/x # /etc/dummy/foo/y # the files in /foo/x and /foo/y would appear in the backup. This allows # files removed with "secret" to be replaced, so you end up with a # working image. There can be any number of "add" directories. # # filter: pathnname [command...] # rdiff-image-backup.sh will remove or modify the backed up copy of the # file. This line has a file name (or glob) followed by an optional # shell filter. If the optional filter is absent the file isn't backed # up. Otherwise the filter is fed the original file on its standard # input and whatever it writes to its standard output is put into the # backup under the file name. The filter is also supplied the input # and output file names as the environment variables FILTER_FROM and # FILTER_TO respectively. Any file or directory can be removed, but only # regular files can be filtered. This option can appear many times. # # This is a useful list of stuff to strip out of a normal Debian installation. # filter: /etc/group- filter: /etc/gshadow- filter: /etc/passwd- filter: /etc/shadow- filter: /tmp/* filter: /usr/share/info/*.old filter: /var/backups/* filter: /var/cache/apt/archives/*.deb filter: /var/cache/apt/archives/partial/* filter: /var/cache/apt/*.bin filter: /var/cache/dpkg/*-old filter: /var/cache/debconf/*-old filter: /var/cache/locate/* filter: /var/cache/man/* filter: /var/lib/aptitude/*.old filter: /var/lib/apt/listchanges.db filter: /var/lib/apt/lists/*_* filter: /var/lib/apt/lists/partial/* filter: /var/lib/apt/periodic/*-stamp filter: /var/lib/dpkg/*-old filter: /var/lib/dpkg/lock filter: /var/lib/logrotate/status filter: /var/lib/rkhunter/db/rkhunter.* filter: /var/lib/rkhunter/tmp/* filter: /var/lock/* filter: /var/tmp/* # # Log files can be interesting, but can make the differential backups # grow quickly. # filter: /var/log/*/*.[0-9] filter: /var/log/*.[0-9] filter: /var/log/*/*.gz filter: /var/log/*.gz filter: /var/log/account/* filter: /var/log/apache2/*.log filter: /var/log/apt/term.log filter: /var/log/auth.log filter: /var/log/cron.log filter: /var/log/daemon.log filter: /var/log/dpkg.log filter: /var/log/journal/* filter: /var/log/kern.log filter: /var/log/lastlog filter: /var/log/mail.info filter: /var/log/mail.log filter: /var/log/mail.warn filter: /var/log/mailman/* filter: /var/log/messages filter: /var/log/mysql.log filter: /var/log/rkhunter.log* filter: /var/log/syslog filter: /var/log/unattended-upgrades/* filter: /var/log/wtmp filter: /var/mail/* filter: /var/run/*.pid filter: /var/run/*.reboot filter: /var/run/*/*.pid filter: /var/run/screen/* filter: /var/run/sudo/* filter: /var/run/utmp # # Example of ignoring moinmoin cache's. # #; filter: /var/www/moinmoin/data/cache/* #; filter: /var/www/moinmoin/data/event-log #; filter: /var/www/moinmoin/data/pages/*/cache/* #; filter: /var/www/moinmoin/data/pages/*/edit-lock #; filter: /var/www/moinmoin/data/pages/*/edit-log # # Example of ignoring postfix's queues. # #; filter: /var/spool/postfix/defer/*/* #; filter: /var/spool/postfix/deferred/*/* # # Example of ignoring postgrey's time stamps. # #; filter: /var/lib/postgrey/* # # Example for Mailman. Mailman leaves some junk lying around. # Warning: You may not consider the held messages junk. # #; filter: /var/lib/mailman/lists/*/*.last #; filter: /var/lib/mailman/qfiles/retry/* #; filter: /var/lib/mailman/data/bounce-* #; filter: /var/lib/mailman/data/heldmsg-* #; filter: /var/lock/mailman/* #; filter: /var/log/mailman/* # # Not backing up the mailman archives is a bit of a compromise. Mailman # won't look the same without them of course, but they are redundant. They # also contain .gz's, which won't rdiff very well. Regenerate them using: # # cd /var/lib/mailman/lists # screen sh -c 'for list in *; do (cd /usr/lib/mailman/bin; sudo ./arch --wipe $list); done' # #; filter: /var/lib/mailman/archives/private/*/*.gz #; filter: /var/lib/mailman/archives/private/*/*.html #; filter: /var/lib/mailman/archives/private/*/*.pck #; filter: /var/lib/mailman/archives/private/*/*/*.html #; filter: /var/lib/mailman/archives/private/*/*.old #; filter: /var/lib/mailman/archives/private/*/*.txt #; filter: /var/lib/mailman/archives/private/*/attachments/* #; filter: /var/lib/mailman/archives/private/*/database/* # # Example for planet. Note that this will render planet unusable until # it next runs. # #; filter: /var/www/planet/cache/* #; filter: /var/www/planet/niftylayout.css #; filter: /var/www/planet/*.html #; filter: /var/www/planet/*.js #; filter: /var/www/planet/*.php #; filter: /var/www/planet/*.xml # Where to output data for HTTP download # -------------------------------------- # # html: template_pathname output_pathname # rdiff-image-cron uses the file template_pathname to generate # the html file output_pathname. This option can appear at # most once. If not present no HTML files are produced. The # template has the following text in it replaced: # # {{BACKUP_DATE}} # Replaced with the date the backup took place. # # {{BACKUP_TABLE}} # Replaced with a element describing the files produced. # # {{BACKUP_TABLE_A}} # As for {{BACKUP_TABLE}}, but the each file name is enclosed with # an element pointing to the file in output_pathname. # # {{GPG_KEYS}} # Replaced with a