1
0
Fork 0
scripts-admin-quickndirty-p.../sauvegarde_ldap.sh

30 lines
894 B
Bash
Executable file

#!/bin/sh
# Configuration
# Le fichier sera nommé BASE_DIR/PREFIXEbasenameSUFFIXE
BASE_DIR=/var/backups/ldap
PREFIXE=sauv_ldap_
SUFFIXE=_$( date +%Y%m%d-%H%M )
DUREE_DE_VIE=100
# Vérifications initiales
if [ ! -d "$BASE_DIR" ]; then
echo "ERREUR : répertoire de sauvegarde inexistant : $BASE_DIR ." >&2
exit 1
fi
# Sauvegarde
# slapcat tourne sous l'utilisateur openldap pour éviter
# de créer des fichiers de BDD appartenant à root.
# cf: http://www.openldap.org/lists/openldap-software/200906/msg00039.html
su -c /usr/sbin/slapcat -s /bin/sh openldap | gzip >"$BASE_DIR/$PREFIXE"example.net"$SUFFIXE".ldif.gz
# Sauvegarde de la configuration
tar -czf "$BASE_DIR/$PREFIXE"conf-etc"$SUFFIXE".tar.gz /etc/ldap
# Suppression des anciennes sauvegardes
if [ "$1" = "--delete-olds" ]; then
find $BASE_DIR -name "$PREFIXE*" -mtime +$DUREE_DE_VIE -print0 | xargs -n 200 -r -0 rm -f
fi