diff options
Diffstat (limited to 'backup-ldap')
-rwxr-xr-x | backup-ldap | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/backup-ldap b/backup-ldap new file mode 100755 index 0000000..a9d1316 --- /dev/null +++ b/backup-ldap @@ -0,0 +1,32 @@ +#!/bin/sh + +# +# Copyright (c) 2002, 2003, 2004, 2005 Peter Palfrader <peter@palfrader.org> +# +# All rights reserved. +# + +set -e + +umask 022 + +SLAPCAT="/usr/sbin/slapcat" +DATE=`date "+%Y%m%d-%H%M%S"` +TARGET=/var/backups/local/ldap + +file="$TARGET/$DATE-ldap" +$SLAPCAT > "$file" +bzip2 "$file" + +md5=`md5sum -- "$file.bz2" | awk '{print $1}'` +if [ -e "$TARGET/MD5-$md5" ]; then + rm -- "$file.bz2" + ln "$TARGET/MD5-$md5" "$file.bz2" +else + ln "$file.bz2" "$TARGET/MD5-$md5" +fi + +# clean up old stuff +find "$TARGET" -name 'MD5-*' -links 1 -print0 | xargs --no-run-if-empty rm -- + + |