View previous topic :: View next topic |
Author |
Message |
Christian99 Veteran
Joined: 28 May 2009 Posts: 1719
|
Posted: Wed Jan 08, 2025 11:43 am Post subject: [gelöst] systemctl --user geht nicht mehr |
|
|
Hallo, vor zwei Wochen ist mir so aufgefallen, dass bei mir systemctl --user nicht mehr geht.
Code: |
systemctl --user
Failed to connect to user scope bus via local transport: Datei oder Verzeichnis nicht gefunden
|
mit strace findet man das hier, was wohl der entscheidende Fehler ist:
Code: |
connect(3, {sa_family=AF_UNIX, sun_path="/tmp/.runtime-chriss/systemd/private"}, 39) = -1 ENOENT (Datei oder Verzeichnis nicht gefunden)
|
tatsächlich gibt es das nicht, es gibt schon gar kein /tmp/.runtime-chriss/systemd, nur /tmp/.runtime-chriss.
Wenn man nach "Failed to connect to user scope bus via local transport" sucht, findet man nur, dass die Leute per ssh eingeloggt sind, und keine systemd user session läuft, weil ssh UsePam (oder so ähnlich deaktiviert hat). Das ist bei mir nicht der Fall, ich bin lokal angemeldet, nicht per ssh und systemd --user läuft auch, er scheint nur die Dateien nicht anzulegen.
Kennt jemand das Problem? ODer hat jemand eine Idee, wie ich da weiterkomme?
Schöne Grüße, Christian
Last edited by Christian99 on Wed Jan 08, 2025 1:11 pm; edited 1 time in total |
|
Back to top |
|
|
schmidicom Veteran
Joined: 09 Mar 2006 Posts: 1978 Location: Schweiz
|
Posted: Wed Jan 08, 2025 12:08 pm Post subject: |
|
|
Ich weiß jetzt zwar nicht warum bei dir das Socket fehlt aber was mich wundert ist der Pfad unter dem bei dir danach gesucht wird. Bei mir befindet sich das DBus-Socket unter "/run/user/1000/systemd/private".
Kann es vielleicht sein das bei dir DBus nicht funktioniert? _________________ Lenovo - ThinkPad P16s Gen 2 - 21K9CTO1WW |
|
Back to top |
|
|
Christian99 Veteran
Joined: 28 May 2009 Posts: 1719
|
Posted: Wed Jan 08, 2025 12:50 pm Post subject: |
|
|
ah ja, guter Hinweis. in /run/user/1000/systemd/private ist der socket. nur systemctl --user denkt also sich wo anders hin verbinden zu müssen....
aber das hatte mich sowieso schon gewundert. ich hätte den socket eigentlich in /run/user statt in /tmp erwartet. die Frage ist, wieso systemctl denkt, in /tmp suchen zu müssen...
DBus läft, sowohl system, als auch user instanz, und busctl und busctl --user gehen.
EDIT:
Es liegt an XDG_RUNTIME_DIR, das ist bei mir auf /tmp/.runtime-chriss gesetzt. wenn ich
Code: | XDG_RUNTIME_DIR=/run/user/1000/ systemctl --user |
ausführe, geht es.
Ich versuch mal rauszukriegen, wieso das falsch ist. |
|
Back to top |
|
|
schmidicom Veteran
Joined: 09 Mar 2006 Posts: 1978 Location: Schweiz
|
|
Back to top |
|
|
Christian99 Veteran
Joined: 28 May 2009 Posts: 1719
|
Posted: Wed Jan 08, 2025 1:11 pm Post subject: |
|
|
gefunden.
ich hab das so in meiner ~/.profile stehen.
Wenn ich das da nicht explizit setzte, dann steht in XDG_RUNTIME_DIR der /run pfad.
da ich gewisse dotfiles auf mehreren Rechnern share sind die in einen git repo, deswegen kann ich sagen, dass das da schon seit 2019 drin steht und bis vor kurzem aber keine Probleme gemacht hat. Leider ist die commitmessage nicht sehr aussagekräftig und ich kann nicht sagen, wieso ich das da überhaupt rein geschrieben habe
Meine Vermutung wäre also, das systemctl bis vor kurzem nicht nach XDG_RUNTIME_DIR geschaut hat, aber jetzt schon.
Ich werde es mal so lassen, und wenn ich keine weiteren problem habe, denke ich mal, dass ich das in der .profile nicht brauche.
Danke für den Stoß in die richtige Richtung! |
|
Back to top |
|
|
schmidicom Veteran
Joined: 09 Mar 2006 Posts: 1978 Location: Schweiz
|
Posted: Wed Jan 08, 2025 2:24 pm Post subject: |
|
|
Ich habe jetzt eine Weile im Sourcecode und in den Commits gewildert aber leider keine konkrete Antwort gefunden warum dieses Verhalten geändert wurde. Was man aber findet ist das es im Bezug auf die Verwendung von "XDG_RUNTIME_DIR" in letzter Zeit nicht gerade wenige Änderungen gab.
Sieht für mich (Achtung bin kein Programmierer) ein bisschen so aus als ob die Entwickler versuchen von hartkodierten Pfaden weg zu kommen, was ja eigentlich etwas gutes wäre oder? _________________ Lenovo - ThinkPad P16s Gen 2 - 21K9CTO1WW |
|
Back to top |
|
|
Christian99 Veteran
Joined: 28 May 2009 Posts: 1719
|
Posted: Wed Jan 08, 2025 2:39 pm Post subject: |
|
|
ja, prinzipiell ist das ne gute Sache, aber fällt dann manchmal Leuten auf die Füße
Aber gut, ist dann halt so
Vermutlich hat das XDG_RUNTIME_DIR in der .profile auch nix zu suchen. Vermutlich hab ich das da rein geschrieben, weil das automatische setzen damals nicht ging, und iregendwas anderes nicht funktioniert hat.
Vielleicht sollte man bei gelegenheit doch mal mit einem leeren User Verzeichnis neu anfangen, damit solcher Müll verschwindet... |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|