Назад | Перейти на главную страницу

Linux: можно ли узнать, с какими опциями была сконфигурирована и скомпилирована установка?

Мне нужно реализовать некоторые веб-проверки в нашей системе Zabbix, которая требует, чтобы Zabbix был скомпилирован с libcurl (curl), но я не знаю, как проверить, скомпилирован ли он с этим параметром или нет. Есть ли какая-нибудь команда или файл, которые помогут мне найти ответ?

Вам нужно использовать ldd(1) для печати зависимостей разделяемых библиотек. Если zabbix-agent был составлен с curl support, он был динамически связан с libcurl библиотека во время компиляции.

У меня сейчас нет под рукой установки zabbix, но процедура проста:

# ldd $(which curl)
        linux-vdso.so.1 =>  (0x00007fff4572b000)
        libcurl.so.4 => /lib64/libcurl.so.4 (0x00007f07a4189000)
        libmetalink.so.3 => /lib64/libmetalink.so.3 (0x00007f07a3f7a000)

Тебе следует увидеть libcurl на выходе. Просто замените curl с участием zabbix-agent.

Я хотел расширить ответ Дауда, который был правильным, но несколько неполным.

Моя среда - Debian Buster amd64 и Zabbix 4.4.5 rev b93f5c4fc0

Мне нужно было посмотреть, скомпилирован ли zabbix_server из репозитория Zabbix был скомпилирован с libxml2 и libcurl для мониторинга VMware, согласно этой статье https://www.zabbix.com/documentation/current/manual/vm_monitoring

Итак, я выполнил:

# ldd /usr/sbin/zabbix_server | egrep 'libxml2|libcurl'

В результате:

libxml2.so.2 => /usr/lib/x86_64-linux-gnu/libxml2.so.2 (0x00007f784dbd1000)
libcurl.so.4 => /usr/lib/x86_64-linux-gnu/libcurl.so.4 (0x00007f784ce29000)

Очевидно, то же самое можно сделать с помощью zabbix_agent