OpenLDAP中数据备份一般分为二种:
1)通过slapcat 指令进行备份
2)通过phpLDAPadmin控制台进行备份
备份方式1:
1)slapcat -v -l openldap-backup.ldif
#能看出来openldap-backup.ldif这个备份文件很乱 有很多我们不需要的属性需要对文件进行处理
2)通过sed文件处理功能对备份文件进行过滤
cat > openldap-backup.synax << EOF
/^creatorsName: /d
/^modifyTimestamp: /d
/^structuralObjectClass: /d
/^modifiersName: /d
/^createTimestamp: /d
/^entryUUID: /d
/^entryCSN: /d
EOF
3)执行sed命令
cat openldap-backup.ldif | sed -f openldap-backup.synax >openldap-complete.ldif
此时对多余的条目进行过滤,以后恢复可通过ldapadd导入即可
备份方式2:
通过OpenLDAP目录树条目进行备份还原时,前提要保证相关schema及额外模块文件必须存在,
例如 sudo ,smaba,ppolicy,syncprov等模块。否则,在执行还原是会提示对象无法识别的错误。
通过以下命令备份数据库文件
#tar czvf openldapslapd-`date +%T-%F` .tar /usr/local/openldap-2.4.44/var/openldap-data
通过ldapsearch 查看所有目录树条目,并保存至某个以ldif结尾的文件,用于OpenLDAP目录条目恢复
#ldapsearch -x -D "cn=root,dc=lohogames,dc=com" -w ldap b dc=lohogames,dc=com > openldap-backfull-1.ldif
OpenLDAP恢复方法
通过ldapadd命令导入数据即可
1)ldapadd -x -D "cn=root,dc=lohogames,dc=com" -W -f openldap-backup.ldif
openldap-backup.ldif 备份文件