[Samba] Copy additional LDAP attributes on migration from ldap
Trent W. Buck
trentbuck at gmail.com
Mon Nov 11 17:12:54 MST 2013
mourik jan heupink <heupink at merit.unu.edu> writes:
> Hi Marc,
>
>> You can simply work around that. After the migration:
>>
>> - Configure your openLDAP to listen on a different port than 389
>> - Start openLDAP again
>> - Write a simple script that loops through all accounts on your DC.
>> Inside this loop you retrieve the required attributes of these accounts
>> from openLDAP and insert them with ldbmodify to AD.
>> - Shutdown openLDAP
>>
>> Sounds more difficult than it is. 15 mins and it's done, if you know a
>> scripting language.
>
> And you happen to have such a simple script somewhere on your
> harddisk..? :-)
Something like this (untested):
ldapsearch -H oldplace mail dn |
while read attr val
do case $attr in
(dn:) dn=$val;;
(mail:) mail=$val
printf 'dn: %s\nmail: %s\n\n' "$dn" "$mail";;
esac
done |
ldbmodify -H tdb:///path/to/sam.ldb
Rinse and repeat for each attribute you care about.
Write to stdout or a file instead of ldbmodify to review it first.
Dealing with missing objectClass attributes and schemas is left as an
exercise for the reader. In the former case, you can probably know a
priori that e.g. mail needs objectClass: person and just add that to the
printf.
More information about the samba
mailing list