#!/bin/bash assert(){ [[ $? -eq 0 ]] || { [[ -n ${1} ]] && echo ${@} ; exit 1 ; } } [[ -n "${LDAP_CONFIG_PASSWORD}" ]] assert "FATAL: Please set LDAP_CONFIG_PASSWORD and retry." # Count databases DB_COUNT=$(ldapsearch -D cn=admin,cn=config -w "${LDAP_CONFIG_PASSWORD}" -b cn=config -LLL "(olcDatabase=mdb)" dn | tr -s '\n' | wc -l) # Perform backup for i in $(seq 0 ${DB_COUNT}) do slapcat -n ${i} -l /var/backups/ldap/${i}.ldif done echo "Backed up ${DB_COUNT} databases in /var/backups/ldap."