Environment
Novell eDirectory 8.8.5 ftf 1 for Linux
Novell Identity Manager 3.6.1 install
Novell Identity Manager 3.6.0 install
Novell Identity Manager 3.5.1 install
Novell Identity Manager 3.6.1 install
Novell Identity Manager 3.6.0 install
Novell Identity Manager 3.5.1 install
Situation
Installing Novell Identity Manager, versions 3.5.1 or 3.6 or 3.6.1, on a server that already has eDirectory 8.8.5 ftf1 will cause issues when IDM tries to load. Drivers will not start and give the errors -641 or -783. Running ndstrace with +DXML and +DVRS flags will show the message:
DirXML JVM interface initialization failed <failed, -299 (0xfffffffffffffed5)>, unloading DIRXML
DirXML JVM interface initialization failed <failed, -299 (0xfffffffffffffed5)>, unloading DIRXML
Resolution
eDirectory 8.8.5 ftf 1 moved the location of the pre_ndsd_start script from /etc/init.d/ to /opt/novell/eDirectory/sbin. The IDM installation process updates the file /etc/init.d/pre_ndsd_start with the following code:
if [ -f /opt/novell/eDirectory/lib/dirxml/dirxml-jni-env ] #added by IDM
then #added by IDM
. /opt/novell/eDirectory/lib/dirxml/dirxml-jni-env #added by
IDM
fi #added by IDM
Make sure that the file /opt/novell/eDirectory/sbin/pre_ndsd_start contains those lines, then restart eDirectory. If your /opt/novell/eDirectory/sbin/pre_ndsd_start file is 0 bytes in size, you can just copy the new one created by IDM install using the command:
cp /etc/init.d/pre_ndsd_start /opt/novell/eDirectory/sbin/pre_ndsd_start
and then restart the ndsd process to pickup the changes.
if [ -f /opt/novell/eDirectory/lib/dirxml/dirxml-jni-env ] #added by IDM
then #added by IDM
. /opt/novell/eDirectory/lib/dirxml/dirxml-jni-env #added by
IDM
fi #added by IDM
Make sure that the file /opt/novell/eDirectory/sbin/pre_ndsd_start contains those lines, then restart eDirectory. If your /opt/novell/eDirectory/sbin/pre_ndsd_start file is 0 bytes in size, you can just copy the new one created by IDM install using the command:
cp /etc/init.d/pre_ndsd_start /opt/novell/eDirectory/sbin/pre_ndsd_start
and then restart the ndsd process to pickup the changes.
Additional Information
To restart ndsd on linux, open a command prompt, then type the command:
/etc/init.d/ndsd restart
/etc/init.d/ndsd restart