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 備份文件