Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: Segmention fault (core dumped) in snmpd na upgrade naar Ubuntu 20  (gelezen 1507 keer)

Offline hansvl

  • Lid
De 15 Ubuntu 18 systemen binnen ons bedrijf ben ik aan het upgraden naar Ubuntu 20.
Die upgrade loopt soepel en duurt +/- 40 minuten.
Ik heb echter wel het probleem dat de snmpd na enkele dagen in een "Segmentation fault (core dumped)" loopt.
Dit gebeurd ook als ik de snmpd handmatig start.
Ondanks dat "ulimit -c" de waarde "unlimited" heeft en er schrijf rechten zijn in de directory zie ik echter geen core file.
De snmpd geeft, bij de crash, ook nog de fout melding "error on subcontainer 'ifTable container' remove (-1)"

In systemen die ik direct met Ubuntu 20 heb geïnstalleerd crashed de snmpd niet.
De file /etc/snmp/snmpd.conf is op alle Ubuntu systemen het zelfde.

De snmpd draait met de onderstaande argumenten.
    snmpd -u Debian-snmp -g Debian-snmp -f -p /run/snmpd.pid
 
Wat is die "subcontainer 'ifTable' container" eigenlijk?

Offline bart85

  • Lid
Re: Segmention fault (core dumped) in snmpd na upgrade naar Ubuntu 20
« Reactie #1 Gepost op: 2023/02/17, 12:11:47 »
Segmentation fault is een fout in de software.
Citaat
When a piece of code tries to do read and write operation in a read only location in memory or freed block of memory, it is known as core dump.
It is an error indicating memory corruption.
Je leert maar mooi over weg gaan met de commandline.
Linus: "I'm happy with the people who are wandering around looking at the stars but I am looking at the ground and I want to fix the pothole before I fall in."
I look to the clouds behind me and see the thunder coming.

Offline hansvl

  • Lid
Re: Segmention fault (core dumped) in snmpd na upgrade naar Ubuntu 20
« Reactie #2 Gepost op: 2023/02/17, 14:21:02 »
Ik wist al wat een "Segmentation fault" is.

De crash treed op na een upgrade van Ubuntu 18.04.6 naar 20.04.5

In de file /var/log/syslog vond ik nog de onderstaande informatie:
  snmpd[1196129]: segfault at 148 ip 00007f9c886756f0 sp 00007ffcd9bb41c0 error 4 in libc-2.31.so[7f9c885fd000+178000]

Re: Segmention fault (core dumped) in snmpd na upgrade naar Ubuntu 20
« Reactie #3 Gepost op: 2023/02/18, 10:26:01 »
Hallo, als je zoekt op "error 4 in libc-2.31.so" dan zie je dat dat vaker voor komt. Er wordt dan gesuggereerd libc-2.31.so opnieuw te installeren omdat deze mogelijk corrupt is geraakt.

Maar: hoe doe je die upgrade? Vanuit Ubuntu zelf, via Updatebeheer? Dat is een potentieel riskante onderneming omdat programmatuur van Ubuntu 18 op je systemen blijft staan en tijdens de update ververst wordt. Er is een kans dat je probleem hier ontstaat, omdat er ergens wat misgaat bij dat upgraden.

Ik heb onlangs voor het eerst zo'n "interne" upgrade gedaan, van Xubuntu 20 naar 22. Vooral om te zien wat er dan gebeurt. Wel, dat leverde nogal wat serieuze problemen op, waarna ik alsnog een verse installatie heb gedaan.

Je zegt zelf dat dit probleem niet voorkomt op de pc's waarop je direct Ubuntu 20 hebt geïnstalleerd. Het antwoord op je vraag lijkt me dus duidelijk...  :)

Offline hansvl

  • Lid
Re: Segmention fault (core dumped) in snmpd na upgrade naar Ubuntu 20
« Reactie #4 Gepost op: 2023/02/20, 14:12:15 »
Op het systeem dat direct met Ubuntu 20 is geïnstalleerd en het systeem dat ge-upgrade is naar Ubuntu 20 staat beide lic6 2.31-0ubuntu9.9

Op beide systemen is libc-2.31.so 2029592 bytes groot.
Op beide systemen geeft 'sum libc-2.31.so' als resultaat '38922 1982'.
De shared library zal dus op het systeem dat ge-upgrade is niet corrupt zijn. 
Op het systeem dat direct met Ubuntu 20 is geïnstalleerd staat libc-2.31.so in '/usr/lib/x86_64_linux-gnu'
Op het systeem dat ge-upgrade is naar Ubuntu 20 staat libc-2.31.so in '/lib/x86_64-linux-gnu'

De file /var/lib/snmp/snmpd.conf verschilt op beide systemen.

Op het systeem dat direct met Ubuntu 20 is geïnstalleerd bestaat de 'ifXTable persistent data' uit 2 regels:
ifXTable .1 14:0 18:0x $
ifXTable .2 14:0 18:0x $

Op het systeem dat ge-upgrade is naar Ubuntu 20 bestaat de 'ifXTable persistent data' uit 68 regels:
ifXTable .1 14:0 18:0x $
ifXTable .2 14:0 18:0x $
ifXTable .3 14:0 18:0x $ifXTable .113559 14:0 18:0x $
ifXTable .151073 14:0 18:0x $

ifXTable .5 14:0 18:0x $
ifXTable .7 14:0 18:0x $
ifXTable .9 14:0 18:0x $
ifXTable .11 14:0 18:0x $
....
ifXTable .113559 14:0 18:0x $
ifXTable .151073 14:0 18:0x $

Die term "if(X)Table" zie ik ook is de crash melding.
Misschien bestaat er een verband.

Offline hansvl

  • Lid
Re: Segmention fault (core dumped) in snmpd na upgrade naar Ubuntu 20
« Reactie #5 Gepost op: 2023/02/20, 14:20:27 »
Op het systeem dat direct met Ubuntu 20 is geïnstalleerd en het systeem dat ge-upgrade is naar Ubuntu 20 staat beide lic6 2.31-0ubuntu9.9

Op beide systemen is libc-2.31.so 2029592 bytes groot.
Op beide systemen geeft 'sum libc-2.31.so' als resultaat '38922 1982'.
De shared library zal dus op het systeem dat ge-upgrade is niet corrupt zijn. 
Op het systeem dat direct met Ubuntu 20 is geïnstalleerd staat libc-2.31.so in '/usr/lib/x86_64_linux-gnu'
Op het systeem dat ge-upgrade is naar Ubuntu 20 staat libc-2.31.so in '/lib/x86_64-linux-gnu'

De file /var/lib/snmp/snmpd.conf verschilt wel op beide systemen.

Op het systeem dat direct met Ubuntu 20 is geïnstalleerd bestaat de 'ifXTable persistent data' uit 2 regels:
ifXTable .1 14:0 18:0x $
ifXTable .2 14:0 18:0x $

Op het systeem dat ge-upgrade is naar Ubuntu 20 bestaat de 'ifXTable persistent data' uit 68 regels:
ifXTable .1 14:0 18:0x $
ifXTable .2 14:0 18:0x $
ifXTable .3 14:0 18:0x $
ifXTable .5 14:0 18:0x $
ifXTable .7 14:0 18:0x $
ifXTable .9 14:0 18:0x $
ifXTable .11 14:0 18:0x $
....
ifXTable .113559 14:0 18:0x $
ifXTable .151073 14:0 18:0x $

Die term "if(X)Table" zie ik ook is de crash melding.
Misschien bestaat er een verband.

Re: Segmention fault (core dumped) in snmpd na upgrade naar Ubuntu 20
« Reactie #6 Gepost op: 2023/02/20, 16:58:10 »
Op het systeem dat direct met Ubuntu 20 is geïnstalleerd staat libc-2.31.so in '/usr/lib/x86_64_linux-gnu'
Op het systeem dat ge-upgrade is naar Ubuntu 20 staat libc-2.31.so in '/lib/x86_64-linux-gnu'

Ubuntu 20 heeft wat andere symlinks gekregen, zie deze post voor meer:
https://askubuntu.com/questions/1242157/why-are-bin-and-sbin-now-symlinks-in-ubuntu-20-04

Die term "if(X)Table" zie ik ook is de crash melding.
Misschien bestaat er een verband.

Zou goed kunnen.

Offline hansvl

  • Lid
Re: Segmention fault (core dumped) in snmpd na upgrade naar Ubuntu 20
« Reactie #7 Gepost op: 2023/02/24, 14:18:28 »
Ondanks dat er geen core file wordt aangemaakt bij een segmentation fault heb ik toch een trace kunnen krijgen door snmpd in de debugger gdb op te starten.
Het lijkt een probleem in de shared library libnetsnmpmibs.so.35 te zijn.
Deze shared libray is een onderdeel van het pakket libsnmp35
Deze versie van libsnmp35 is 5.8_dfsg-2ubuntu2.6
De versie, grote en sum is het zelfde op de origineel geïnstalleerde Ubuntu20 als de upgrade naar Ubuntu 20.

Hoe kan ik dit verder uitzoeken?
 
(gdb) bt
#0  __GI___libc_free (mem=0x150) at malloc.c:3102
#1  0x00007ffff7d8003b in netsnmp_access_interface_entry_free ()
   from /usr/lib/x86_64-linux-gnu/libnetsnmpmibs.so.35
#2  0x00007ffff7d557e8 in ifTable_rowreq_ctx_cleanup ()
   from /usr/lib/x86_64-linux-gnu/libnetsnmpmibs.so.35
#3  0x00007ffff7d83ef2 in ifTable_release_rowreq_ctx ()
   from /usr/lib/x86_64-linux-gnu/libnetsnmpmibs.so.35
#4  0x00007ffff7bd1878 in ?? () from /usr/lib/x86_64-linux-gnu/libnetsnmp.so.35
#5  0x00007ffff7d85fc8 in ifTable_container_load ()
   from /usr/lib/x86_64-linux-gnu/libnetsnmpmibs.so.35
#6  0x00007ffff7f604ad in ?? () from /usr/lib/x86_64-linux-gnu/libnetsnmpagent.so.35
#7  0x00007ffff7bab4d7 in run_alarms ()
   from /usr/lib/x86_64-linux-gnu/libnetsnmp.so.35
#8  0x0000555555559864 in ?? ()
#9  0x000055555555910d in main ()