ldd – Auf der Suche nach verlorenen Bibliotheken (.so Dateien)

Der Fehler könnte wie folgt aussehen:

postfix: fatal: libcrypto.so.0.9.7: open failed: No such file or directory

Nun, die Datei ist da aber wo sucht nun die Anwendung danach?

Der Befehl ldd hilft die Antwort auf diese Frage zu finden:

root@myserver:/opt# ldd /usr/sbin/postfix
libssl.so.0.9.7 =>       (file not found)
libcrypto.so.0.9.7 =>    (file not found)
libldap.so.5 =>  /usr/lib/libldap.so.5
libresolv.so.2 =>        /usr/lib/libresolv.so.2
libsocket.so.1 =>        /usr/lib/libsocket.so.1
libnsl.so.1 =>   /usr/lib/libnsl.so.1
libc.so.1 =>     /usr/lib/libc.so.1
libsasl.so.1 =>  /usr/lib/libsasl.so.1
libmd.so.1 =>    /lib/libmd.so.1
libnspr4.so =>   /usr/lib/mps/libnspr4.so
libplc4.so =>    /usr/lib/mps/libplc4.so
libnss3.so =>    /usr/lib/mps/libnss3.so
libssl3.so =>    /usr/lib/mps/libssl3.so
libmp.so.2 =>    /lib/libmp.so.2
libscf.so.1 =>   /lib/libscf.so.1
libpthread.so.1 =>       /lib/libpthread.so.1
libthread.so.1 =>        /lib/libthread.so.1
librt.so.1 =>    /lib/librt.so.1
libdl.so.1 =>    /lib/libdl.so.1
libsoftokn3.so =>        /usr/lib/mps/libsoftokn3.so
libplds4.so =>   /usr/lib/mps/libplds4.so
libuutil.so.1 =>         /lib/libuutil.so.1
libgen.so.1 =>   /lib/libgen.so.1
libbsm.so.1 =>   /lib/libbsm.so.1
libsecdb.so.1 =>         /lib/libsecdb.so.1
libtsol.so.2 =>  /lib/libtsol.so.2
libinetutil.so.1 =>      /lib/libinetutil.so.1
libm.so.2 =>     /lib/libm.so.2

So oder so ähnlich könnte die Ausgabe von ldd aussehen. Nun kann man prüfen, ob die entsprechenden Dateien vorhanden sind und ggf. passende Symlinks anlegen.

Kommentarfunktion ist deaktiviert