add "save" command
This commit is contained in:
parent
684eed56c9
commit
a95ac82a6d
|
@ -0,0 +1,43 @@
|
|||
#!/bin/sh
|
||||
# save all ldap databases to /var/backups/<date-iso>/
|
||||
set -e
|
||||
MAXDB=30
|
||||
|
||||
if [ -n "$1" ]; then
|
||||
BASESAVEDIR="$1"
|
||||
if [ ! -d "$BASESAVEDIR" ]; then
|
||||
echo "ERR: first argument must be an existing directory (is: $BASESAVEDIR)"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
BASESAVEDIR=/var/backups
|
||||
fi
|
||||
|
||||
SAVEDIR="${BASESAVEDIR}"/slapd-save-`date +%Y%m%dT%H%M%S`
|
||||
|
||||
echo "save slapd config and databases in ${SAVEDIR}"
|
||||
|
||||
mkdir -p "$SAVEDIR"
|
||||
|
||||
echo -n " export config in $SAVEDIR/config.ldif .."
|
||||
slapcat -n0 -l"${SAVEDIR}"/config.ldif
|
||||
echo "ok"
|
||||
|
||||
for i in `seq 1 $MAXDB`; do
|
||||
echo -n " export database ${i} .."
|
||||
if ! slapcat -n${i} -l"${SAVEDIR}"/db-${i}.ldif; then
|
||||
echo "(none)"
|
||||
true
|
||||
else
|
||||
echo "ok"
|
||||
fi
|
||||
done
|
||||
echo "remove empty files .."
|
||||
find "${SAVEDIR}" -size 0 -delete
|
||||
echo "ok"
|
||||
|
||||
echo ""
|
||||
echo "${SAVEDIR} contents:"
|
||||
ls -l "${SAVEDIR}"
|
||||
echo ""
|
||||
|
|
@ -0,0 +1 @@
|
|||
save all ldap databases to /var/backups/<date-iso>/
|
Reference in New Issue