Dieser Beitrag handelt von dbus-Daemon-Fehlern mit undefiniertem Symbol und dessen Behebung.
Um ehrlich zu sein, war ich 2 Tage mit diesem Thema beschäftigt. Ich habe überall gegoogelt und alle vorgeschlagenen Lösungen ausprobiert, aber nichts funktioniert. Während das System bootet, hängt es immer noch mit Start-D-Bus-Meldungen. Es dauert zu lange, die Konsole zu erreichen, aber selbst damit können Sie sich nicht mit LDAP- oder ssh-Clients anmelden. Alle Dienste, die den Dbus verwenden, sind ausgefallen.
Die einzige Möglichkeit besteht darin, den Rettungsmodus zu verwenden, um dieses Problem schnell zu lösen.
Das Problem liegt an dbus
Linken gegen eine inkompatible Bibliothek namens libexpat.so.1
und hat Vorrang vor der von Red Hat gelieferten Bibliothek in /usr/lib64
.
Schritt 1:Untersuchung
Bitte melden Sie sich als root an und verwenden Sie die journalctl-Befehle, um die Fehler anzuzeigen
journalctl --since "2 days ago" | grep -i error
journalctl --since "2 days ago" | grep -i Failed
Schritt 2:Analysieren
Jetzt wissen wir, dass etwas mit /sur/bin/dbus-doemon
nicht stimmt#ldd /usr/bin/dbus-daemon | grep libexpat
libexpat.so.1 => /app/Oracle/product/12.2.0/client_1/lib/libexpat.so.1 (0x00007f6d65a89000)
Schritt 3:dbus-Daemon schlägt mit undefiniertem Symbol fehl – Lösung
Überprüfen und entfernen Sie die Pfade zu Bibliotheken von Drittanbietern aus /etc/ld.so.conf.d
#cat /etc/ld.so.conf.d/temp.conf
/app/Oracle/product/12.2.0/client_1/lib/
Entfernen oder in ein anderes Verzeichnis verschieben
mv /etc/ld.so.conf.d/temp.conf /root
Erstellen Sie den LD-Cache neu
#ldconfig
Überprüfen Sie, ob dbus
verlinkt jetzt gegen die erwartete Bibliothek in /usr/lib64
# ldd /usr/bin/dbus-daemon | grep libexpat
libexpat.so.1 => /lib64/libexpat.so.1 (0x00007f43abb55000)
wie Sie sehen, ist das System wieder normal
Schritt 4:Starten Sie den Server neu
Alle Dienste sollten jetzt laufen und OK sein, einschließlich Dbus und Polikit
systemctl-status-polkit und Dbus
# systemctl status polkit
● polkit.service - Authorization Manager
Loaded: loaded (/usr/lib/systemd/system/polkit.service; static; vendor preset: disabled)
Active: active (running) since Fri 2022-02-18 09:31:01 CET; 4h 17min ago
Docs: man:polkit(8)
Main PID: 901 (polkitd)
CGroup: /system.slice/polkit.service
└─901 /usr/lib/polkit-1/polkitd --no-debug
systemctl status dbus
● dbus.service - D-Bus System Message Bus
Loaded: loaded (/usr/lib/systemd/system/dbus.service; static; vendor preset: disabled)
Active: active (running) since Fri 2022-02-18 09:31:01 CET; 4h 17min ago
Docs: man:dbus-daemon(1)
Main PID: 881 (dbus-daemon)
CGroup: /system.slice/dbus.service
└─881 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation
Bitte lesen Sie auch unseren Artikel zu Polkit und Dus mit dieser Fehlermeldung
„Berechtigung nicht vorhanden“. Überprüfen Sie, ob der Polkit-Dienst ausgeführt wird.“