Opened 8 years ago

Closed 8 years ago

#221 closed баг (готово)

Не запускается snmpd

Reported by: san Owned by: alx
Priority: высокий Milestone: 1 очередь
Component: any Keywords:
Cc: viktam

Description

У Вити на нескольких блоках VIP громкий бой не включается по SNMP,
как выяснилось - не запускается snmpd.
VIP(VE-02) аппаратной версии v.2(с SFP вместо eth2)
Все пакеты обновлены до актуальных версий с сайта.

comcerto:~# /etc/init.d/snmpd restart
/sbin/snmpd: can't load library 'libnetsnmp.so.15'

В моём блоке .0.245 snmpd запускается без ошибок.
Витя собирается вернуться на место происшествия в четверг.
Может есть какие-то догадки о возможных причинах нештатного поведения?

Attachments (5)

1.jpg (29.2 KB ) - added by san 8 years ago.
libnetsnmpagent.so.30.0.3.bad (156.4 KB ) - added by alx 8 years ago.
Дефектная библиотека
libnetsnmpmibs.so.30.0.3.bad (255.5 KB ) - added by alx 8 years ago.
Дефектная библиотека
libnetsnmpagent.so.30.0.3 (156.4 KB ) - added by alx 8 years ago.
Хорошая библиотека
libnetsnmpmibs.so.30.0.3 (255.5 KB ) - added by alx 8 years ago.

Download all attachments as: .zip

Change History (23)

in reply to:  description comment:1 by alx, 8 years ago

Replying to san:

Все пакеты обновлены до актуальных версий с сайта.

comcerto:~# /etc/init.d/snmpd restart
/sbin/snmpd: can't load library 'libnetsnmp.so.15'

В плате VE-02 для работы SNMP-сервера требуется два пакета: snmpd и libnetsnmp. В первом содержится сам сервер (демон), во втором - библиотеки.

На данный момент в репозитории находястя пакеты libnetsnmp_5.7.3-2_c300evm.ipk и snmpd_5.7.3-2_c300evm.ipk. Пакет libnetsnmp_5.7.3-2_c300evm.ipk содержит дидлиотеку libnetsnmp.so.30 (которая является симлинком на libnetsnmp.so.30.0.3), прогрнамма snmpd из пакета snmpd_5.7.3-2_c300evm.ipk, соответственно, линкуется с libnetsnmp.so.30.

Почему snmpd в плате Вити хочет libnetsnmp.so.15 вместо libnetsnmp.so.30, я знать не могу, но предполагаю, что информация о том что

Все пакеты обновлены до актуальных версий с сайта.

не соответствует действительности. Вероятнее всего, в плате пакет libnetsnmp обновлен до версии 5.7.3, а пакет snmpd остался версии 5.4.4 (которая, действительно, использовала libnetsnmp.so.15).

Version 0, edited 8 years ago by alx (next)

comment:2 by alx, 8 years ago

В качестве подтверждения - вот какую версию библиотек хочет актуальная версия snmpd:

$ strings snmpd |grep libnetsnmp
libnetsnmpagent.so.30
libnetsnmpmibs.so.30
libnetsnmp.so.30

by san, 8 years ago

Attachment: 1.jpg added

comment:3 by san, 8 years ago

Все пакеты обновлены до актуальных версий с сайта.

не соответствует действительности

Возможно, но при проверке обновлений через веб-морду, Витя обновлений не увидел.

(архив с пакетами он скачал с сайта вчера)

comment:4 by san, 8 years ago

Changed 3 дня ago by alx

$ wget -q http://adc-line.ru/program/upd_vip.zip
$ unzip -q upd_vip.zip
$ grep snmpd_ upd_vip_1047/ftp/ipk/c300evm/Packages
Filename: snmpd_5.7.3-2_c300evm.ipk
$ tar zxf upd_vip_1047/ftp/ipk/c300evm/snmpd_5.7.3-2_c300evm.ipk
$ tar zxf data.tar.gz
$ strings usr/sbin/snmpd | grep libnet
libnetsnmpagent.so.30
libnetsnmpmibs.so.30
libnetsnmp.so.30

comment:5 by san, 8 years ago

http://adc-line.ru/program/upd_vip.zip

Да я тоже проверил.
Значит будем разбираться в четверг на месте.

in reply to:  3 comment:6 by alx, 8 years ago

Cc: viktam added

Replying to san:

Все пакеты обновлены до актуальных версий с сайта.

не соответствует действительности

Возможно,

Чтобы выяснить, соответствует ли действительности эта информация, попроси, пожалуйста, Витю показать результат выполнения команды

opkg list_installed

in reply to:  5 comment:7 by alx, 8 years ago

Replying to san:

Значит будем разбираться в четверг на месте.

Не понял... Зачем ждать четверга? Или ты планируешь ехать в место установки блока?

comment:8 by san, 8 years ago

Витя собирается вернуться на место происшествия в четверг.

in reply to:  8 comment:9 by alx, 8 years ago

Replying to san:

Витя собирается вернуться на место происшествия в четверг.

Если это был ответ на вопрос, зачем ждать четверга, то я его не понял.

comment:10 by san, 8 years ago

У Вити доступ к тем блокам, на которых наблюдалось такое поведение, будет только в четверг.

Last edited 8 years ago by san (previous) (diff)

comment:11 by san, 8 years ago

Чтобы выяснить, соответствует ли действительности эта информация, попроси, пожалуйста, Витю показать результат выполнения команды opkg list_installed

root@comcerto:~# opkg list_installed
base-files - 27-unknown -
busybox - 1.18.5-1 -
dnsmasq - 2.75-8 -
dropbear - 0.52-3 -
hotplug2 - 1.0-beta-1 -
kernel - 2.6.22.19-4.07.0-candidate1-c300evm-1 -
kmod-crc-ccitt - 2.6.22.19+2.6.22.19-4.07.0-candidate1-c300evm-1 -
kmod-csmencaps - 2.6.22.19+2.18.0-candidate5-c300evm-1 -
libc - 0.9.30.1-27 -
libcares - 1.10.0-1 -
libdb47 - 4.7.25.NC-6 -
libeXosip2 - 4.1.0-1 -
libgcc - 4.3.4-27 -
libmicrohttpd - 0.9.31-1 -
libmsp - 0.1.2 -
libnetsnmp - 5.7.3-2 -
libopenssl - 1.0.2d-1 -
libosip2 - 4.1.0-1 -
libpcre - 8.36-2 -
libpcrecpp - 8.36-2 -
libpri - 1.4.15-1 -
libpthread - 0.9.30.1-27 -
librt - 0.9.30.1-27 -
libstdcpp - 4.3.4-27 -
libuci - 0.7.5-1 -
msp-control - 0.1.2 -
mtd - 8 -
ntpclient - 2007_365-4 -
opkg - 215-2 -
resiprocate - 1.9.10 -
snmpd - 5.7.3-2 -
uci - 0.7.5-1 -
udevtrigger - 106-1 -
ve-02 - 1.0-1047-1 -
wget-nossl - 1.12-3 -
zlib - 1.2.8-1 -

in reply to:  11 comment:12 by alx, 8 years ago

Replying to san:

snmpd - 5.7.3-2 -

Спасибо. Информация действительности соответствует. Остается вопрос, почему snmpd хочет старые библиотеки...

Попроси, пожалуйста, Ваню показать вывод следующих команд:

ls -l /usr/sbin

ldd /usr/sbin/snmpd

strings /usr/sbin/snmpd | grep libnet

opkg info snmpd

comment:13 by san, 8 years ago

root@comcerto:~# ls -l /usr/sbin
-rwxr-xr-x    1 root     root          5112 May 20  2016 adjtimex
lrwxrwxrwx    1 root     root            17 May 20  2016 brctl -> ../../bin/busybox
lrwxrwxrwx    1 root     root            17 May 20  2016 chroot -> ../../bin/busybox
lrwxrwxrwx    1 root     root            17 May 20  2016 crond -> ../../bin/busybox
lrwxrwxrwx    1 root     root            17 May 20  2016 dhcprelay -> ../../bin/busybox
-rwxr-xr-x    1 root     root        170496 Jun 21  2016 dnsmasq
-rwxr-xr-x    1 root     root        169692 May 20  2016 dropbear
lrwxrwxrwx    1 root     root            17 May 20  2016 ftpd -> ../../bin/busybox
lrwxrwxrwx    1 root     root            17 May 20  2016 nbd-client -> ../../bin/busybox
-rwxr-xr-x    1 root     root         22264 May 20  2016 ntpclient
lrwxrwxrwx    1 root     root            17 May 20  2016 ntpd -> ../../bin/busybox
-rwxr-xr-x    1 root     root           666 May 20  2016 rate.awk
lrwxrwxrwx    1 root     root            17 May 20  2016 rdate -> ../../bin/busybox
-rwxr-xr-x    1 root     root         17128 Jun 21  2016 snmpd
lrwxrwxrwx    1 root     root            17 May 20  2016 telnetd -> ../../bin/busybox
lrwxrwxrwx    1 root     root            17 May 20  2016 udhcpd -> ../../bin/busybox
root@comcerto:~# ldd /usr/sbin/snmpd
        libnetsnmpagent.so.30 => /usr/lib/libnetsnmpagent.so.30 (0x4000e000)
        libnetsnmpmibs.so.30 => /usr/lib/libnetsnmpmibs.so.30 (0x4003d000)
        libnetsnmp.so.30 => /usr/lib/libnetsnmp.so.30 (0x400d2000)
        libdl.so.0 => /lib/libdl.so.0 (0x40150000)
        libc.so.0 => /lib/libc.so.0 (0x4015b000)
        libm.so.0 => /lib/libm.so.0 (0x401b6000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x401d0000)
        libnetsnmp.so.15 => not found
        libnetsnmpagent.so.15 => not found
        ld-uClibc.so.0 => /lib/ld-uClibc.so.0 (0x40000000)
root@comcerto:~# strings /usr/sbin/snmpd | grep libnet
libnetsnmpagent.so.30
libnetsnmpmibs.so.30
libnetsnmp.so.30
root@comcerto:~# opkg info snmpd
Package: snmpd
Version: 5.7.3-2
Depends: libnetsnmp
Provides:
Status: install user installed
Section: net
Architecture: c300evm
maintainer: OpenWrt Developers Team <openwrt-devel@openwrt.org>
MD5Sum: abcb3afaf35570349c3af3cc1e241292
Size: 10659
Filename: snmpd_5.7.3-2_c300evm.ipk
Source: package/net-snmp
Description: Simple Network Management Protocol (SNMP) is a widely used protocol for
 monitoring the health and welfare of network equipment (eg. routers),
 computer equipment and even devices like UPSs. Net-SNMP is a suite of
 applications used to implement SNMP v1, SNMP v2c and SNMP v3 using both
 IPv4 and IPv6.
 .
 This package contains the SNMP agent, dynamically linked.

root@comcerto:~#

in reply to:  13 comment:14 by alx, 8 years ago

Очень странно... Он хочет и libnetsnmp.so.30, и libnetsnmp.so.15...
При этом libnetsnmp.so.15 в нем не встречается. Откуда же он ее берет?

Давай попробуем поискать libnetsnmp.so.15 командой

grep -rl libnetsnmp.so /usr

comment:15 by san, 8 years ago

Витя проверили произвольно ещё 3 блока из этой же партии, на всех snmpd не запущен.
Всего их там штук 20.

comment:16 by san, 8 years ago

Говорят, что блоки никто не трогал(не обновлял). Т.е. в таком виде их наше производство отгрузило.

comment:17 by san, 8 years ago

root@comcerto:~# grep -rl libnetsnmp.so /usr
/usr/lib/opkg/info/libnetsnmp.list
/usr/lib/libnetsnmpagent.so.30.0.3
/usr/lib/libnetsnmpmibs.so.30
/usr/lib/libnetsnmpagent.so.30
/usr/lib/libnetsnmpmibs.so.30.0.3
/usr/lib/libnetsnmp.so.30.0.3
/usr/lib/libnetsnmp.so.30
/usr/sbin/snmpd

comment:18 by alx, 8 years ago

Resolution: готово
Status: newclosed

Как показала последующая проверка, проблема была в библиотеках libnetsnmpagent.so.30.0.3 и libnetsnmpmibs.so.30.0.3 платы VE-02. Эти библиотеки по неустановленным причинам оказались собраны некорректно, и имели ссылки на библиотеки более старых версий libnetsnmp.so.15 и libnetsnmpagent.so.15. После установки этих библиотек на исправный блок проблема на нем полностью воспроизвелась. После переустановки на проблемный блок пакета libnetsnmp_5.7.3-2_c300evm.ipk из репозитория неисправность устранилась.

Вывод: в какой-то период времени при изготовлении плат VE-02 использовался некорректно собранный пакет libnetsnmp_5.7.3-2_c300evm.ipk. На момент проверки пакет libnetsnmp_5.7.3-2_c300evm.ipk, имеющийся в репозитории, собран корректно.

Для устранения проблемы ревизия всех пакетов net-snmp увеличена с -2 до -3 для того чтобы уже имеющиеся платы VE-02 обновились штатным образом.

На всякий случай прилагаю файлы библиотек.

by alx, 8 years ago

Дефектная библиотека

by alx, 8 years ago

Дефектная библиотека

by alx, 8 years ago

Attachment: libnetsnmpagent.so.30.0.3 added

Хорошая библиотека

by alx, 8 years ago

Attachment: libnetsnmpmibs.so.30.0.3 added
Note: See TracTickets for help on using tickets.