openldap 備份與導入 及相關問題

摘要:html

  對openldap進行備份時,直接使用slapcat命令進行備份,使用ldapadd還原出現問題及解決。正則表達式

 

介紹:數據庫

  對openldap進行備份時,直接使用slapcat命令進行備份(如代碼一),而後使用ldapadd還原會出現如下報錯信息:服務器

  ldap_add: Constraint violation (10)dom

  additional info: structuralObjectClass: no user modification allowedui

#代碼一:
slapcat -v -l ldapbackup.ldif

  分析緣由:slapcat備份出來的ldapback.ldif中有系統自動生成的系統信息不能導入須要清除spa

  解決方案:清除ldapback.ldif中的系統信息.net

  步驟:unix

  一、新建過濾正則表達式slapcat.regexcode

cat >slapcat.regex <<EOF
/^creatorsName: /d
/^createTimestamp: /d
/^modifiersName: /d
/^modifyTimestamp: /d
/^structuralObjectClass: /d
/^entryUUID: /d
/^entryCSN: /d
EOF

  二、過濾掉系統信息

cat ldapback.ldif | sed -f slapcat.regex > slapdata.ldif

  三、使用ldapadd導入

ldapadd -H ldap://127.0.0.1 -x -D "用戶" -f slapdata.ldif -w 密碼
#或 服務器程序導入 初始使用可能失敗
#slapadd -l slapdate.ldif

 

 

  備份方案二:

ldapsearch -x -b 'dc=com,dc=cn' > ldapbackup.ldif

  

其餘方案:

  [方法1]

  關閉:kill -INT `cat /var/run/slapd.pid`
  啓動:/usr/sbin/slapd
  備份:/usr/sbin/slapcat>mail_ldap.ldif
  導入:ldapadd -x -D "cn=Manager,dc=domain,dc=com" -w secret -v -f mail_ldap.ldif
  關閉模式導入:
  slapadd -l mail_ldap.ldif -f /etc/openldap/sladp.conf

  [方法2]

  系統忽然掉電或重啓引發LDAP數據庫意外關閉形成的。

  進入ldap數據目錄(/openldap/var/openldap-data),執行db_recover,再啓動服務.

  /var/lib/ldap slapd db_recover

 

參考:

  [1] linewer.Ldap相關問題小結.http://blog.chinaunix.net/uid-10328574-id-2951045.html.2013-10-08

  [2] shrekmu.手工備份恢復Openldap數據庫.http://blog.csdn.net/shrekmu/article/details/1266361.2013-10-08

  [3] nonnie.OpenLDAP的手工備份與恢復.http://blog.163.com/nonnie@126/blog/static/57630308201091194938915/.2013-10-08

相關文章
相關標籤/搜索