Desktop, X11 und Wayland

Ein Desktop-Prozess erreicht seinen Sitzungs-D-Bus nicht

Außerhalb des Desktops gestartete Anwendungen können eine alte oder fehlende Busadresse erben. Vor einem weiteren Bus den Startkontext prüfen.

Auf dieser Seite
  1. Symptome und Geltungsbereich
  2. Mögliche Ursachen
  3. Sicher prüfen
  4. Nächste Schritte nach Befund
  5. Quellen und Prüfung
  6. Verwandte Probleme

Symptome und Geltungsbereich

  • Ein Starter erreicht Desktop-Dienste nicht, die im Terminal funktionieren.
  • Ein Prozess versucht D-Bus-Autostart ohne X11-Display.

Betroffene Umgebung

D-Bus-Sitzungsnachrichten; busctl bei vorhandener Installation, eigene Sitzungen können dbus-daemon oder dbus-broker nutzen.

Erkennbare Meldungen (synthetische Beispiele)
Error: Cannot autolaunch D-Bus without X11 $DISPLAY

Den korrekten Sitzungsbus-Kontext herstellen; eine native Wayland-Sitzung benötigt keinen erfundenen DISPLAY-Wert.

Mögliche Ursachen

Das sind mögliche Erklärungen, keine bestätigte Diagnose. Mehrere unabhängige Fehler können gleichzeitig vorliegen.

  • Der Starter kann eine Busadresse einer früheren Anmeldung oder eines anderen Kontos übernehmen.
  • Eine eigene Sitzung kann die vorgesehene D-Bus-Startintegration auslassen.

Sicher prüfen

Führe jeweils einen Befehl in der passenden Sitzung aus. Lies zuerst die Erklärung. Großgeschriebene Platzhalter brauchen deine Werte; Werkzeuge und Rechte unterscheiden sich je nach Distribution. Die Website zeigt Befehle an und führt sie niemals aus.

Prüfschritt 1

Den fehlerhaften Kontext mit einem funktionierenden Terminal des vorgesehenen Kontos vergleichen; keine fremde Konto-Adresse übernehmen.

printenv DBUS_SESSION_BUS_ADDRESS XDG_RUNTIME_DIR

Ergebnis einordnen: Ein alter Unix-Socketpfad spricht für eine geerbte Adresse. Eine fehlende Variable kann mit Laufzeitverzeichnis-Erkennung trotzdem funktionieren.

Prüfschritt 2

Fragt vorhandene Busnamen ab, ohne Desktop-Anwendungen zu starten oder Diensteinstellungen zu ändern.

busctl --user list

Ergebnis einordnen: Eine Liste bestätigt den Zugang dieses Kontexts, nicht eines anderen Starters. Fehler können an Bus, Adresse oder Laufzeitverzeichnis liegen.

Nächste Schritte nach Befund

Innerhalb des bestehenden Desktop-Busses starten

Wenn ein Starter eine alte DBUS_SESSION_BUS_ADDRESS setzt, diese sichern und nur die Vorgabe entfernen. Als angemeldetes Desktop-Konto starten und die dokumentierte Sitzungsintegration korrigieren, statt manuell einen Socket einer anderen Anmeldung zu exportieren.

Vorsicht: Weitere unabhängige Sitzungsbusse in einem laufenden Desktop können Anwendungen von Portal- und Benachrichtigungsdiensten isolieren.

Wiederherstellung / Rücknahme: Den gesicherten Starter oder die Sitzungsdatei wiederherstellen und bei falscher Integration neu anmelden.

Hat dir dieser Hinweis geholfen?

Hinweis teilen#

Eine tatsächlich eigenständige Sitzung mit dbus-run-session starten

Wenn eine eigenständige eigene Sitzung keine Busintegration mitbringt, deren dokumentierten Wrapper dbus-run-session -- SESSION_PROGRAM am Sitzungsbeginn nutzen. Das Kind erhält einen neuen Bus, der mit dem Sitzungsprogramm endet; SESSION_PROGRAM durch den tatsächlichen unterstützten Sitzungsbefehl ersetzen.

Vorsicht: Nur nutzen, wenn die Sitzung einen eigenen Bus erhalten soll, nicht pauschal für Anwendungen in einer bestehenden GNOME- oder Plasma-Sitzung.

Wiederherstellung / Rücknahme: Den Wrapper entfernen und den gesicherten Sitzungsstart herstellen; das Ende der umhüllten Sitzung beendet auch ihren temporären Bus.

Hat dir dieser Hinweis geholfen?

Hinweis teilen#

Quellen und Prüfung

Diese Anleitung basiert auf Originalquellen von Projekten oder Distributionen und wurde am genannten Datum redaktionell geprüft. Das ist eine Quellenprüfung, kein Nachweis einer auf deiner Hardware reproduzierten Lösung. Log-Beispiele sind synthetische Testdaten. Versionsabhängige Details müssen zur installierten Ausgabe passen.