我正在关注这安装 ldap 服务器的指南。在第 9 步我使用:
/usr/local/libexec/slapd
代替:
su root -c /usr/local/libexec/slapd
因为我无法访问 su
我收到此消息:
/usr/local/libexec/slapd: error while loading shared libraries: libdb-6.0.so: cannot open shared object file: No such file or directory
当我尝试时:ldd /usr/local/libexec/slapd
我得到:
/usr/local/libexec/slapd linux-vdso.so.1 => (0x00007fffe01ff000)
libdb-5.3.so => /usr/local/BerkeleyDB.6.0/lib/libdb-6.0.so (0x00007fe2f743e000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x0000003fd1400000)
libresolv.so.2 => /lib64/libresolv.so.2 (0x0000003fd2c00000)
libc.so.6 => /lib64/libc.so.6 (0x0000003fd0c00000) /lib64/ld-linux-x86-64.so.2 (0x000 fe2f743e000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x0000003fd1400000) libr
esolv.so.2 => /lib64/libresolv.so.2 (0x0000003fd2c00000)
libc.so.6 => /lib64/lib
有人看出这其中有什么问题吗?
答案1
验证该/usr/local/BerkeleyDB.6.0/lib/libdb-6.0.so
文件是否存在且可被你的帐户读取。如果是,请尝试设置变量LD_LIBRARY_PATH
以包含该目录:
$LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/BerkeleyDB.6.0/lib $ 导出 LD_LIBRARY_PATH
然后尝试slapd
再次运行该可执行文件。
答案2
除非你必须走出软件包管理器,只需安装适合您发行版的软件包即可。对于 RHEL 和 kin,该软件包是openldap-servers
。一般来说,如果您从源代码(在软件包管理器之外)进行编译,那么您做错了。