Tech Tips
Using the Sun Directory Server Tools LDIFDIFF,PL and LDIFFSORT,PL to Verify Bulk Loads
작성자
서진디에스에이
작성일
2017-09-29 13:17
조회
16131
Steps to Verify a Bulk Load:
Import (ldif2db) users from entiredirectory.ldif.
Export the users (db2ldif) to entiredirectory.export.ldif.
Remove the entry ids:
egrep -v "entry-id|nsUniqueId" entiredirectory.ldif > \ entiredirectory.noids.ldif
egrep -v "entry-id|nsUniqueId" entiredirectory.export.ldif > \ entiredirectory.export.noids.ldif
Use “ldifsort.pl” to sort the files:
./contrib/ldifsort.pl -k dn entiredirectory.noids.ldif > \ entiredirectory.noids.sorted.ldif
./contrib/ldifsort.pl -k dn entiredirectory.export.noids.ldif > \ entiredirectory.export.noids.sorted.ldif
Use “ldifdiff.pl to diff the files:
./contrib/ldifdiff.pl -k dn entiredirectory.noids.sorted.ldif \ entiredirectory.export.noids.sorted.ldif
If there is no output, then both the LDIFS contain the same data.
Important Notes
These tools seem to work on Windows but USE THEM ON UNIX! Windows line breaks seem to break these tools.
I also tested changing the export file and using ldifdiff.pl on it. As advertised, ldifdiff.pl generates on standard output the LDIF changes needed to transform the target into the source.
One potential problem with ldifdiff.pl output is that renaming the DN will result in a DELETE +ADD, not a MODRDN, so you will lose the createTimeStamp. (Of course, this could be fixed, with some perl programming.)
Article by Chris Paul, Seojindsa, Inc.
Import (ldif2db) users from entiredirectory.ldif.
Export the users (db2ldif) to entiredirectory.export.ldif.
Remove the entry ids:
egrep -v "entry-id|nsUniqueId" entiredirectory.ldif > \ entiredirectory.noids.ldif
egrep -v "entry-id|nsUniqueId" entiredirectory.export.ldif > \ entiredirectory.export.noids.ldif
Use “ldifsort.pl” to sort the files:
./contrib/ldifsort.pl -k dn entiredirectory.noids.ldif > \ entiredirectory.noids.sorted.ldif
./contrib/ldifsort.pl -k dn entiredirectory.export.noids.ldif > \ entiredirectory.export.noids.sorted.ldif
Use “ldifdiff.pl to diff the files:
./contrib/ldifdiff.pl -k dn entiredirectory.noids.sorted.ldif \ entiredirectory.export.noids.sorted.ldif
If there is no output, then both the LDIFS contain the same data.
Important Notes
These tools seem to work on Windows but USE THEM ON UNIX! Windows line breaks seem to break these tools.
I also tested changing the export file and using ldifdiff.pl on it. As advertised, ldifdiff.pl generates on standard output the LDIF changes needed to transform the target into the source.
One potential problem with ldifdiff.pl output is that renaming the DN will result in a DELETE +ADD, not a MODRDN, so you will lose the createTimeStamp. (Of course, this could be fixed, with some perl programming.)
Article by Chris Paul, Seojindsa, Inc.
전체 0
댓글을 남기려면 로그인하세요.