openLDAP如何从当前configuration中删除nis架构

openLDAP 2.4 Ubuntu 14.04

我从ldap发现了这个基于dn的linux组的问题。 我试图包含rfc2307bis模式,但似乎在包含rfc2307bis之前必须从configuration中删除nis模式。 我如何从当前configuration中删除这个nis架构

我设法得到它的工作:

  1. sudo service slapd stop
  2. sudo slapcat -n0 > ~/config.ldif (configuration备份)
  3. sudo slapcat -n1 > ~/users.ldif (用户和组的备份)
  4. 删除文件夹/etc/ldap/slapd.d的内容(或重命名并创build一个新的slapd.d文件夹)
  5. 删除文件夹/var/lib/ldap (或者重命名并创build一个新的ldap文件夹),我没有删除只有一个文件DB_CONFIG
  6. 修改~/config.ldif文件来删除nis架构
  7. sudo slapadd -F /etc/ldap/slapd.d -n 0 -l ~/config.ldif
  8. sudo chown openldap:openldap -R /etc/ldap/slapd.d
  9. sudo service slapd start
  10. rfc2307bis模式添加到ldapconfiguration:

     sudo ldapadd -Y EXTERNAL -H ldapi:/// \ -f /etc/ldap/schema/rfc2307bis.ldif -D "cn=admin,cn=config" -W 
  11. sudo service slapd stop

  12. 修改~/users.ldif

    • 添加objectClass: groupOfMembers组合对象
    • 使用structuralObjectClass删除行(或者用stringobjectClass: groupOfMembersreplacestringstructuralObjectClass: posixGroup

    它应该看起来像这样(仅适用于组对象):

     dn: cn=groupname,ou=Groups,dc=some,dc=net cn: groupname gidNumber: 501 objectClass: posixGroup objectClass: groupOfMembers objectClass: top description: some description entryUUID: f4599276-d798-1033-80a3-b52a8483a973 creatorsName: cn=admin,dc=some,dc=net createTimestamp: 20140923181242Z memberUid: peterb memberUid: kennyg memberUid: mendyn entryCSN: 20140925190322.990791Z#000000#000#000000 modifiersName: cn=admin,dc=some,dc=net modifyTimestamp: 20140925190322Z 
  13. sudo slapadd -F /etc/ldap/slapd.d -n 1 -l ~/users.ldif

  14. sudo chown openldap:openldap -R /var/lib/ldap
  15. sudo service slapd start