You could try with the relax rules control.
ldapmodify -E relax
Be careful! Try in a test system! Check your data with slapschema afterwards!
Ciao, Michael.
Marco Pizzoli wrote:
Hi all, yes, I already know this is not possible. But I have a particular scenario and maybe someone could give advice.
In an LDAP tree I inherited some times ago, I have entries created many years ago by using a schema definition which implied an entry to acquire as structuralObjectClass a custom objectClass. This custom objectClass (let's say it's called custObjectClass) inherits from inetOrgPerson and mandates some specific attributes. Now, all entries are created expliciting the following objectClasses:
- top
- person
- organizationalPerson
- inetOrgPerson
- custObjectClass
The outcome is these entries have custObjectClass as structuralObjectClass.
Now, I would like to make some cleaning on this tree, and I would like to change some schema definition on objects. First of all, I would like to NOT have custObjectClass as structuralObjectClass.
Obviously I could slapcat my slapd engine, change the ldif and then re-import as new. But I would prefer to not switch off my slapd engine in the meantime. I can't afford that, to be honest...
One idea I had was to create a replica consumer, change on it the schema definition (custObjectClass inheriting from TOP and being auxiliary instead of structural), and let the replication create the entries with the correct "structurality". I self-discovered this way is not viable, considering OL refuses to insert an entry with source structuralObjectClass not being defined structural on the slave as well.
Now I'm asking for help to the community. Any hint welcome. How would you do? Thanks in advance Marco