X-Git-Url: https://git.stderr.nl/gitweb?p=matthijs%2Fupstream%2Fbackupninja.git;a=blobdiff_plain;f=handlers%2Frdiff.helper;h=42bcb1b2de04c3809b55164eabdc0fad031b2cf0;hp=2538dd8fcb9282f9f5695acd30dfdd73cb7a758d;hb=be75e4e6c536882c14db9a41c61585e7a9c045f6;hpb=a8cf739f66b4f8cdce0097b750a28dc249948f3f diff --git a/handlers/rdiff.helper b/handlers/rdiff.helper index 2538dd8..42bcb1b 100644 --- a/handlers/rdiff.helper +++ b/handlers/rdiff.helper @@ -269,6 +269,24 @@ do_rdiff_finish() { [source] type = local keep = $rdiff_keep + +# A few notes about includes and excludes: +# 1. include, exclude and vsinclude statements support globbing with '*' +# 2. Symlinks are not dereferenced. Moreover, an include line whose path +# contains, at any level, a symlink to a directory, will only have the +# symlink backed-up, not the target directory's content. Yes, you have to +# dereference yourself the symlinks, or to use 'mount --bind' instead. +# Example: let's say /home is a symlink to /mnt/crypt/home ; the following +# line will only backup a "/home" symlink ; neither /home/user nor +# /home/user/Mail will be backed-up : +# include = /home/user/Mail +# A workaround is to 'mount --bind /mnt/crypt/home /home' ; another one is to +# write : +# include = /mnt/crypt/home/user/Mail +# 3. All the excludes come after all the includes. The order is not otherwise +# taken into account. + +# files to include in the backup EOF ## includes ## if [ "$host_or_vservers" == host -o "$host_or_vservers" == both ]; then @@ -289,7 +307,7 @@ EOF # vsinclude = # ... # Any path specified in vsinclude is added to the include list for each vserver -# listed in vsnames (or all if vsnames = all). +# listed in vsnames (or all if vsnames = all, which is the default). # # For example, vsinclude = /home will backup the /home directory in every # vserver listed in vsnames. If you have 'vsnames = foo bar baz', this @@ -374,7 +392,7 @@ rdiff_wizard() { # Global variables whose '*' shall not be expanded set -o noglob rdiff_includes=(/var/spool/cron/crontabs /var/backups /etc /root /home /usr/local/*bin /var/lib/dpkg/status*) - rdiff_excludes=(/home/*/.gnupg) + rdiff_excludes=(/home/*/.gnupg /home/*/.local/share/Trash /home/*/.Trash /home/*/.thumbnails /home/*/.beagle /home/*/.aMule /home/*/gtk-gnutella-downloads) rdiff_vsincludes= set +o noglob