Views:

Summary

DPX will install on this family of Linux 8.0, but doesn't run. To be specific, cmagent doesn't start because a shared library it expect is no long part of the minimal distribution of this version. This article provides a work-around that allows cmagent to run.

 

 

Symptoms

 

 

  • There's no obvious symptom that the shared library is missing.  The sscmagent log file doesn't give any indication that cmagent didn't start. 
  • Attempting to add or browse the node from Configure Enterprise results in a 10061 error, indicating a failure to connect to CMAGENT on the system. 
  • Running "ps -ef" and searching cmagent will at best only find the grep that's looking for cmagent:

 

 

# ps -ef | grep cmagent
root     25414 25307  0 21:28 pts/0    00:00:00 grep --color=auto cmagent

 

Resolution

The shared library libnsl.so.1 has been deprecated, but a new version is still available with 8.0, though as a legacy library or as part of a compatibility package.  First, see if the newer library is already installed on the system:

 

 

# ls /lib64/libnsl.so.2.0.0
ls: cannot access '/lib64/libnsl.so.2.0.0': No such file or directory

or, if present:
 
/lib64/libnsl.so.2.0.0


If not present, use "yum whatprovides libnsl" to confirm the package name, which will likely be "libnsl":
 

Updating Subscription Management repositories.
libnsl-2.28-42.el8_0.1.i686 : Legacy support library for NIS
Repo        : @System
Matched from:
Provide    : libnsl = 2.28-42.el8_0.1

libnsl-2.28-42.el8.i686 : Legacy support library for NIS
Repo        : rhel-8-for-x86_64-baseos-rpms
Matched from:
Provide    : libnsl = 2.28-42.el8


Several more entries are likely to be printed.  Install it with:

# yum install libnsl


This will likely install libnsl.so.2.0.0 and a symbolic link called libnsl.so.2.  DPX expects a library named libnsl.so.1.  Create an additional symbolic link:

# cd /lib64
# ln -s libnsl.so.2.0.0 libnsl.so.1


Then return to the DPX bin directory and confirm cmagent resolves the library:
 

# cd /opt/DPX/bin
# ldd cmagent
        linux-vdso.so.1 (0x00007fff335ec000)
        libnsl.so.1 => /lib64/libnsl.so.1 (0x00007f7987f79000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007f7987d75000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f79879b1000)
        libtirpc.so.3 => /lib64/libtirpc.so.3 (0x00007f798777e000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f7988193000)
        libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x00007f798752e000)
        libkrb5.so.3 => /lib64/libkrb5.so.3 (0x00007f798723e000)
        libk5crypto.so.3 => /lib64/libk5crypto.so.3 (0x00007f7987022000)
        libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007f7986e1e000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f7986bfe000)
        libkrb5support.so.0 => /lib64/libkrb5support.so.0 (0x00007f79869ee000)
        libcrypto.so.1.1 => /lib64/libcrypto.so.1.1 (0x00007f7986516000)
        libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00007f7986312000)
        libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f79860fb000)
        libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f7985ed1000)
        libz.so.1 => /lib64/libz.so.1 (0x00007f7985cba000)
        libpcre2-8.so.0 => /lib64/libpcre2-8.so.0 (0x00007f7985a36000)


Use sscmagent in misc to start DPX (from the bin directory):

# ../misc/sscmagent start