У меня есть CentOS 7 (3.10.0-693.el7.x86_64) из Pivotal Greenplum Sandbox VM.

Я пытался установить OpenLDAP:

sudo yum install openldap openldap-servers openldap-clients -y 

Но когда я запускаю slappasswd -s mypassword , я получаю странную ошибку ниже:

slappasswd: symbol lookup error: slappasswd: undefined symbol: ber_sockbuf_io_udp

Я не видел этого нигде, даже если я использую чистый Centos 7 с нуля.

Так что же привело к поломке slappasswd и как это исправить?

ОБНОВЛЕНИЕ 1

Я выполнил ldd /usr/sbin/slappasswd и вот вывод:

linux-vdso.so.1 =>  (0x00007ffcb7dd3000)
libldap_r-2.4.so.2 => /usr/local/greenplum-db/./lib/libldap_r-2.4.so.2 (0x00007f285ed37000)
liblber-2.4.so.2 => /usr/local/greenplum-db/./lib/liblber-2.4.so.2 (0x00007f285eb29000)
libdb-5.3.so => /lib64/libdb-5.3.so (0x00007f285e762000)
libsasl2.so.3 => /lib64/libsasl2.so.3 (0x00007f285e545000)
libnss3.so => /lib64/libnss3.so (0x00007f285e21a000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f285dffe000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007f285ddc7000)
libslapi-2.4.so.2 => /lib64/libslapi-2.4.so.2 (0x00007f285dba6000)
libltdl.so.7 => /lib64/libltdl.so.7 (0x00007f285d99c000)
libwrap.so.0 => /lib64/libwrap.so.0 (0x00007f285d791000)
libc.so.6 => /lib64/libc.so.6 (0x00007f285d3cd000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f285d1b3000)
libssl.so.1.0.0 => /usr/local/greenplum-db/./lib/libssl.so.1.0.0 (0x00007f285cf41000)
libcrypto.so.1.0.0 => /usr/local/greenplum-db/./lib/libcrypto.so.1.0.0 (0x00007f285caba000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f285c8b6000)
libnssutil3.so => /lib64/libnssutil3.so (0x00007f285c689000)
libplc4.so => /lib64/libplc4.so (0x00007f285c483000)
libplds4.so => /lib64/libplds4.so (0x00007f285c27f000)
libnspr4.so => /lib64/libnspr4.so (0x00007f285c041000)
/lib64/ld-linux-x86-64.so.2 (0x000056487cd59000)
libfreebl3.so => /lib64/libfreebl3.so (0x00007f285be3d000)
libnsl.so.1 => /lib64/libnsl.so.1 (0x00007f285bc24000)
librt.so.1 => /lib64/librt.so.1 (0x00007f285ba1b000)

1 ответ1

1

Ваш исполняемый файл, вероятно, ссылается на неправильную библиотеку.

Вы можете использовать ldd /<insert path to slappasswd here>/slappasswd чтобы узнать, какие динамические библиотеки загружаются . Используйте, например, whereis slappasswd чтобы найти его путь.

Посмотрите здесь, где описан такой случай.

Обновить:

Изменение порядка каталогов на пути LD решило вопросы для @HP .:

export LD_LIBRARY_PATH=/lib64:$LD_LIBRARY_PATH

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .