一、备份
1、执行备份命令
方式1(一般用这个):
slapcat -v -l /data/ldapbackup.ldif
方式2:
ldapsearch -x -b 'dc=abc,dc=com' -H ldap://172.29.xxx.xxx:389 -D "cn=Manager,dc=abc,dc=com" -W > ldapbackup.ldif
二、恢复数据
说明:
由于slapcat备份出来的ldapback.ldif中有系统自动生成的系统信息不能导入,需要清除
解决方案:清除ldapback.ldif中的系统信息
1、编写一个正则文件,用来清除ldapback.ldif中的系统信息
cat >slapcat.regex <<EOF /^creatorsName: /d /^createTimestamp: /d /^modifiersName: /d /^modifyTimestamp: /d /^structuralObjectClass: /d /^entryUUID: /d /^entryCSN: /d EOF
2、执行过滤清除
cat ldapback.ldif | sed -f slapcat.regex > slapdata.ldif
3、导入数据
ldapadd -x -D "cn=Manager,dc=abc,dc=com" -H ldap://172.29.xx.xxx -W -f slapdata.ldif (一般用这个)
或者:
slapadd -l slapdate.ldif
或者:
如果安装了phpldapadmin,也可以在web上面导入;
三、最后来一个最简单的备份脚本
#!/bin/bash DATE1=$(date "+%Y-%m-%d") bak_dir="/data/ldap_bak"
#判断备份存储目录是否存在,不存在则创建
[ -d ${bak_dir} ] || mkdir -p ${bak_dir}
#执行备份 /sbin/slapcat -v -l ${bak_dir}/ldapbackup_${DATE1}.ldif #删除10天前的备份 find ${bak_dir} -mtime +10 -name "*.ldif" -exec rm -rf {} \; >& /dev/null
标签:恢复,备份,dc,slapcat,openLDAP,ldif,bak,dir From: https://www.cnblogs.com/weiyiming007/p/17242391.html