Какова общая стратегия обработки нескольких отсутствующих общих объектов?

1241
barrrista

Я все еще изучаю Linux, так что терпите меня ...

Я запустил ldd на Apache httpd и нашел много пропавших общих библиотек. Я новичок в этой машине и не уверен, что некоторые из них неуместны или вообще отсутствуют. Я думаю, что кто-то установил более новую версию httpd, и для него требуются новые версии общих библиотек, которые он не может найти. Я смог найти некоторые из этих библиотек в других местах на машине, например, выполнив команду «locate libmm». Однако я не знаю, с какой версией его связать.

Показательный пример: на что должна ссылаться следующая ссылка?

libssl.so.2 => not found

Я не нашел libssl.so.2 на моей машине, но я нашел ...

/lib/.libssl.so.0.9.8e.hmac /lib/.libssl.so.6.hmac /lib/libssl.so.0.9.8e /lib/libssl.so.6 /lib64/.libssl.so.0.9.8e.hmac /lib64/.libssl.so.6.hmac /lib64/libssl.so.0.9.8e /lib64/libssl.so.6 /usr/lib/libssl3.so /usr/lib64/libssl3.so 

Если у меня нет файла для ссылки, то как я могу найти правильный пакет онлайн для его установки? Например, если я использую yum search mm, трудно определить, какой пакет установить, а какой содержит правильную общую библиотеку.

Это простой способ переустановить Apache?

Вот вывод ldd.

$ ldd ../bin/httpd  libaprutil-1.so.0 => .../apache/2.2.24.rhas5.x86_64/lib/libaprutil-1.so.0 (0x00002ae571b0c000) libapr-1.so.0 => .../apache/2.2.24.rhas5.x86_64/lib/libapr-1.so.0 (0x00002ae571d2f000) libuuid.so.1 => /lib64/libuuid.so.1 (0x0000003fd7c00000) libpthread.so.0 => /lib64/libpthread.so.0 (0x00002ae571f68000) libmm.so.14 => not found libxml2.so.2 => /usr/lib64/libxml2.so.2 (0x00002ae572183000) libm.so.6 => /lib64/libm.so.6 (0x0000003fd8000000) libpcre.so.0 => /lib64/libpcre.so.0 (0x0000003fd7000000) libcurl.so.4 => not found libidn.so.11 => /usr/lib64/libidn.so.11 (0x00002ae5724c2000) libldap-2.4.so.2 => not found librt.so.1 => /lib64/librt.so.1 (0x0000003fd8800000) libcrypto.so.1.0.0 => not found libdl.so.2 => /lib64/libdl.so.2 (0x00002ae5726f4000) libz.so.1 => /usr/lib64/libz.so.1 (0x0000003fd8400000) libexpat.so.1 => not found libssl.so.1.0.0 => not found libc.so.6 => /lib64/libc.so.6 (0x0000003fd6c00000) /lib64/ld-linux-x86-64.so.2 (0x0000003fd6800000) libmm.so.14 => not found libcurl.so.4 => not found libssl.so.1.0.0 => not found libexpat.so.1 => not found libmm.so.14 => not found libcurl.so.4 => not found libexpat.so.1 => not found libssl.so.1.0.0 => not found 
0

1 ответ на вопрос

0
Rich Homolka

Did you install this from a package? I would just do a yum install httpd, and it should take care of dependencies.

if you really want to go track down some of this stuff, you could try rpmfind, and search there for provides/requires stuff. But it would take a lot of time.