Missing symbols for libraries when attempting to perform analysing of core cump

I’m trying to analyze core dump files of the systemd process, but encountering errors due to missing symbols.

Can anyone advise what debug symbols need to be installed to successfully analyze these core dumps?

gdb  -e /usr/lib/systemd/systemd-journald -c core-systemd-journal--0-0-657-1718434887
GNU gdb (GDB) Red Hat Enterprise Linux 8.2-20.el8
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word".

warning: core file may not match specified executable file.
[New LWP 657]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Missing separate debuginfo for /lib64/libuuid.so.1
Try: yum --enablerepo='*debug*' install /usr/lib/debug/.build-id/d0/43572678e11cfb56aecb4ec534bc016de8d0d5.debug
Missing separate debuginfo for /lib64/libudev.so.1
Try: yum --enablerepo='*debug*' install /usr/lib/debug/.build-id/94/5e15d6b231fc346823186cd70e886dede771ca.debug
Core was generated by `/usr/lib/systemd/systemd-journald'.
Program terminated with signal SIGABRT, Aborted.

Did you try the Yum commands it suggests?

If this is like, a disconnected host and you can’t make the debug repos available to be enabled, you can run those commands with provides instead of install on a host that is able to enable those repos, download the packages, and then transfer them over. Or use one of those websites that lets you do such a file search (if they have the debug packages indexed; I don’t think I’ve ever tried).

I have tried running the follow as suggested

yum --enablerepo='*debug*' install /usr/lib/debug/.build-id/94/5e15d6b231fc346823186cd70e886dede771ca.debug

I get the following instead:


No match for argument: /usr/lib/debug/.build-id/d0/43572678e11cfb56aecb4ec534bc016de8d0d5.debug
Error: Unable to find a match: /usr/lib/debug/.build-id/d0/43572678e11cfb56aecb4ec534bc016de8d0d5.debug

Normally, I would obtain the relevant symbols through dnf debuginfo-install <package>. However, I am not sure where to get the ones listed in the output.

[vagrant@localhost ~]$ sudo dnf --releasever=8.9 --enablerepo='*debug*' provides /usr/lib/debug/.build-id/d0/43572678e11cfb56aecb4ec534bc016de8d0d5.debug /usr/lib/debug/.build-id/94/5e15d6b231fc346823186cd70e886dede771ca.debug
Last metadata expiration check: 0:02:08 ago on tor 02 jul 2024 01:03:53 UTC.
libuuid-debuginfo-2.32.1-44.el8_9.1.x86_64 : Debug information for package libuuid
Repo        : baseos-debuginfo
Matched from:
Filename    : /usr/lib/debug/.build-id/d0/43572678e11cfb56aecb4ec534bc016de8d0d5.debug

systemd-libs-debuginfo-239-78.el8.x86_64 : Debug information for package systemd-libs
Repo        : baseos-debuginfo
Matched from:
Filename    : /usr/lib/debug/.build-id/94/5e15d6b231fc346823186cd70e886dede771ca.debug

[vagrant@localhost ~]$ 

Here and here, I think, though maybe your debuginfo-install would work with a --releasever=8.9.

Works. Thanks.

Release version (--releasever=8.9) is important as the current version is now at 8.10 and lookup will default to this release.

Ran the command as suggested

sudo dnf --releasever=8.9 --enablerepo='*debug*' provides /usr/lib/debug/.build-id/d0/43572678e11cfb56aecb4ec534bc016de8d0d5.debug /usr/lib/debug/.build-id/94/5e15d6b231fc346823186cd70e886dede771ca.debug

Repo        : baseos-debuginfo
Matched from:
Filename    : /usr/lib/debug/.build-id/d0/43572678e11cfb56aecb4ec534bc016de8d0d5.debug

And then installed with:

sudo dnf --releasever=8.9 install libuuid-debuginfo-2.32.1-44.el8_9.1.x86_64