Linux DBus loswerden

Linux Betriebssystem

brgs

Member
Registriert
25 Sep. 2011
Beiträge
109
Moin,

alle zehn Sekunden schreibt mir X eine Meldung ins Log, daß es /var/run/dbus/system_bus_socket
nicht finden kann. Nun würde mich mal interessieren, wie ich die loswerde, denn eine Xorg.conf
(wo ich dann möglicherweise no dbus reinschreiben könnte) schreiben zu lassen funktioniert aus
unerfindlichen Gründen nicht (Segfaulted), eine manuell erstellte bekomme ich nicht erfolgreich hin,
weil ich das zu lange nicht mehr gemacht habe. Vieleicht gibt es eine X-Option, die ich nicht
gefunden habe?

Der naive Ansatz per socat selbst einen Socket aufzumachen funktioniert auch nicht, dann
bekomme ich "protocol wrong type for socket", und wenn man die Problematik versucht
zu googlen, endet man immer nur in Diskussionen wie toll wichtig DBus doch ist und daß
man das lassen soll.

Vieleicht hat sich da schonmal jemand mit beschäftigt und kann mir einen Tip geben,
wo ich suchen muß?


Grüße, Brgs
 
Hier fehlen jegliche Informationen aus denen man irgendeine Art von Hnweis basten könnte:
- Welche Distribution in welcher Version (zweck Bugsuche)?
- Zitat der exakte Fehlermeldung (keine Nacherzählung)
- Falls der Segfault beim Erstellen der Xorg.conf relevant ist: Warum tritt er auf?

Unter'm Strich wirst du dbus nicht loswerden. Das steckt so tief im System, dass ein Desktop-Linu ohne es prktisch unmöglich ist.
 
Hier fehlen jegliche Informationen aus denen man irgendeine Art von Hnweis basten könnte:
- Welche Distribution in welcher Version (zweck Bugsuche)?
- Zitat der exakte Fehlermeldung (keine Nacherzählung)
Das halte ich für unerheblich, weil der Bug darin besteht, daß X alle zehn Minuten
eine uninteressante Meldung ins Log schreibt und als "ist kein Bug" geschlossen
wurde, als sich mal jemand beschwert hat.

- Falls der Segfault beim Erstellen der Xorg.conf relevant ist: Warum tritt er auf?
Ich hatte gehofft eine Möglichkeit zu finden, das in Xorg.conf disablen zu
können. Der Segfault tritt wahrscheinlich auf, weil da jemand gedacht
hat: "Das kann ja kein Nullpointer sein, ich dereferenzier' das einfach und
spar' mir die eine Zeile."

#0 0x0000000000000000 in ?? ()
#1 0x00005555555dfb30 in DoConfigure ()
#2 0x00005555555ef027 in InitOutput ()
#3 0x00005555555ac496 in ?? ()
#4 0x00007ffff564f2e1 in __libc_start_main (main=0x555555596300, argc=4, argv=0x7fffffffec48,
init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>,
stack_end=0x7fffffffec38) at ../csu/libc-start.c:291
#5 0x000055555559633a in _start ()

Ich habe bisher niemanden gefunden, der nicht bei DoConfigure() aufgegeben
hat zu suchen.

Unter'm Strich wirst du dbus nicht loswerden. Das steckt so tief im System, dass ein Desktop-Linu ohne es prktisch unmöglich ist.

Letztendlich könntest Du damit richtig liegen, aber das betrifft den session bus,
das oben aber den system bus. Bisher hat mir auch noch niemand eine nützliche
Anwendung für einen davon gezeigt, die ohne dbus nicht besser funktioniert hätte.

Beispielsweise stürzt mein Browser ab, wenn da kein dbus ist, er nutzt ihn,
soweit ich das sehe, aber nur um nachzusehen, ob sich der Proxyserver
geändert hat.


Grüße, Brgs
 
Das halte ich für unerheblich, weil der Bug darin besteht, daß X alle zehn Minuten
eine uninteressante Meldung ins Log schreibt und als "ist kein Bug" geschlossen
wurde, als sich mal jemand beschwert hat.
Du hast ein Problem, dessen Lösung du nicht kennst. Es liegt also zumindest im Bereich des Möglichen, dass es deine Fähigkeiten/Kenntnisse übersteigt.
Nun ist es oft so, dass die Fähigkeiten die zur Abschätzung der relevanten Informationen zu einem Problem nötig sind, die Gleichen sind, die zu dessen Lösung nötig sind.
Anders ausgedrückt: Es liegt nahe, dass du gar nicht weißt, welche Informationen zur Lösung deines Problems nötig sind.

Ich hatte gehofft eine Möglichkeit zu finden, das in Xorg.conf disablen zu
können.
Das wäre aber nur Symptombehandlung, keine Ursachenbekämpfung. Das Problem ist ja nicht, dass da eine Meldung im Log auftaucht, sondern was auch immer diese Meldung verursacht.
Vielleicht ist nicht mehr als Symptombekämpfung möglich, aber erstes Ziel sollte die Ursachenbeseitigung sein.

Der Segfault tritt wahrscheinlich auf, weil da jemand gedacht
hat: "Das kann ja kein Nullpointer sein, ich dereferenzier' das einfach und
spar' mir die eine Zeile."
Möglich. Es könnte aber auch sein, dass dein RAM kaputt ist, oder, oder, oder ...
Um das zu prüfen müsste man dein Problemszenario nachstellen können. Aber dazu fehlen dienötigen Infos.

#0 0x0000000000000000 in ?? ()
#1 0x00005555555dfb30 in DoConfigure ()
#2 0x00005555555ef027 in InitOutput ()
#3 0x00005555555ac496 in ?? ()
#4 0x00007ffff564f2e1 in __libc_start_main (main=0x555555596300, argc=4, argv=0x7fffffffec48,
init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>,
stack_end=0x7fffffffec38) at ../csu/libc-start.c:291
#5 0x000055555559633a in _start ()
Der Segfault tritt ja offenbar in deiner libc auf, hat also an dieser Stelle nichts mehr mit xorg zu tun.
Nun wäre es also interessant zu erfahren, was an deiner libc(-Umgebung) so außergewöhnlich ist, denn wenn sie es nicht wäre, würde das Problem wohl öfter auftreten und wäre bekannter.
Meine erste Vermutung wäre ein unsauberes System (Releasemix, Fremdquellen, etc.), aber mangels Informationen kann ich nur spekulieren.

Ich habe bisher niemanden gefunden, der nicht bei DoConfigure() aufgegeben
hat zu suchen.
Vermutlich, weil es keinen Spaß macht, im Nebel zu stochern.
 
Du hast ein Problem, dessen Lösung du nicht kennst. Es liegt also zumindest im Bereich des Möglichen, dass es deine Fähigkeiten/Kenntnisse übersteigt.
Nun ist es oft so, dass die Fähigkeiten die zur Abschätzung der relevanten Informationen zu einem Problem nötig sind, die Gleichen sind, die zu dessen Lösung nötig sind.
Anders ausgedrückt: Es liegt nahe, dass du gar nicht weißt, welche Informationen zur Lösung deines Problems nötig sind.

Du täuscht Dich. Mein Problem ist, daß eine Meldung im Log auftaucht, die mir auf den Nerv geht. Die Ursache
ist, daß X nach einem DBus sucht, den es nicht finden wird, weil ich ihn deaktiviert habe. Das einzige Programm,
das damit ein Problem hat, ist X, aber auch nicht damit, daß es den bräuchte, sondern nur damit, daß er nicht da
ist. Bevor jemand fragt: Bevor ich dbus abgeschaltet habe, ging -configure auch nicht.

Die Lösung liegt übrigens auch auf der Hand: Entweder es gibt eine Konfigurationsmöglichkeit, oder ich
rekompiliere X ohne Dbus. Ich hätte nur eben gerne mal ein Programm gehabt, das ich einfach nur aus
dem Paket installiert und benutzt hätte.


Möglich. Es könnte aber auch sein, dass dein RAM kaputt ist, oder, oder, oder ...
Um das zu prüfen müsste man dein Problemszenario nachstellen können. Aber dazu fehlen dienötigen Infos.

Genaugenommen braucht man da -- sobald man das backtrace gesehen hatte -- nur den Source Code. Was
ich gestern morgen noch gar nicht wußte: Der ist bei Devuan freundlicherweise dabei. (Also direkt als Paket in
der Binary-Distribution, das man ohne Schmerzen mal eben installieren und kompilieren kann.)

Der Segfault tritt ja offenbar in deiner libc auf, hat also an dieser Stelle nichts mehr mit xorg zu tun.

Unsinn. DoConfigure() ruft eine Funktion namens NULL auf. Das steht da oben in dem backtrace.
Wie kommst Du auf libc?

Viel mehr sieht man übrigens auch nicht, wenn man in den Sourcecode guckt: Der Treiber müßte
eine Funktion preInit haben. Hat er aber nicht. (Das ist vermutlich der eigentliche Fehler.)
DoConfigure ruft sie trotzdem auf. Patsch. Ist es eine gute Idee im X Server anzunehmen die
Funktion werde schon nicht NULL sein? Nach meinen bescheidenen Kenntnissen und Fähigkeiten
nicht.

Vermutlich, weil es keinen Spaß macht, im Nebel zu stochern.

Nein. Weil es keinen Spass macht in diesem Müllhaufen von X Server rumzustochern, der aussieht wie ein
8 Wochen toter Pottwal von innen, während hundert Leute danebenstehen und skandieren: "Du sollst keine
Xorg.conf benutzen!"


Grüße, Brgs
 
  • ok1.de
  • ok2.de
  • thinkstore24.de
  • Preiswerte-IT - Gebrauchte Lenovo Notebooks kaufen

Werbung

Zurück
Oben