这两天对于之前的百度的按照ldapsearch的方式备份openldap,但是生成的ldif文件却是空的,我又花费了很长时间去研究,后来还是slapcat备份和slapadd的还原方式比较好用
备份的脚本如下(生成的ldif文件会带有一些系统信息,需要使用slapadd方式导入):
echo '准备开始备份ldap'
DATEFORMATTYPE1=$(date +%Y-%m-%d)
DATEFORMATTYPE2=$(date +%Y%m%d%H%M%S)
echo $DATEFORMATTYPE1
#使用slapcat备份
LDAPDIR=/usr/local/openldap
LDAPSCAT=$LDAPDIR/sbin/slapcat
#备份目录
BACKDIR=/home/backup/ldap/$DATEFORMATTYPE1
${LDAPSCAT} -l ${BACKDIR}/before.ldif;
还原的命令如下(需要注意:必须关闭openldap,且删除openldap之前的根节点,包括dc=chinautrust,dc=com这一级,否则会报错):
./slapadd -l /home/before.ldif
导入成功后,在重启openldap:
/usr/local/openldap/libexec/slapd $
重启后查看进程:
ps -ef|grep openldap