systemctl --use Failed to connect to bus: No such file or directory Debian 9

27,062

Solution 1

  1. There must be a /lib/systemd/systemd --user process for the user you're running this for. Check with: ps aux | grep systemd. In my case the process didn't exist because I was trying to setup background services on another account, and that user wasn't logged in (the systemd --user process is normally launched at login). The solution was to run sudo loginctl enable-linger $otherUser, which keeps the systemd --user process running at all times.

  2. XDG_RUNTIME_DIR must be set. In my case it wasn't, so my command had to be sudo -u $otherUser XDG_RUNTIME_DIR=/run/user/$(id -u $otherUser) systemctl --user.

Solution 2

Most likely you have forgotten to enable pam in the openssh configuration?

grep UsePAM /etc/ssh/sshd_config 
UsePAM yes

The part responsible for starting the user session is pam_systemd:

grep -R systemd /etc/pam.d/system-login 
-session   optional   pam_systemd.so debug

If you habe enabled debugging (debug pam option). You should see debug messages like:

$ journalctl -u sshd  -g pam_systemd
Jun 17 17:41:05 shaun sshd[3575212]: pam_systemd(sshd:session): pam-systemd initializing
Jun 17 17:41:05 shaun sshd[3575212]: pam_systemd(sshd:session): Asking logind to create session: uid=1000 pid=3575212 service=sshd type=tty class=user desktop= seat= vtnr=0 tty= display= remote=yes remote_user= remote_host=192.168.178.34

logind starts your user instance.

Share:
27,062

Related videos on Youtube

Admin
Author by

Admin

Updated on September 18, 2022

Comments

  • Admin
    Admin over 1 year

    When I run this commande in my Debian 9 VPS : systemctl --user I have this following error : Failed to connect to bus: No such file or directory

    This error appear on all users except the user root.

    I already have the dbus dbus-user-session systemd libsystemd-dev libsystemd

    This is my env :

    USER=web
    LOGNAME=web
    HOME=/home/web
    PATH=/usr/local/bin:/usr/bin:/bin:/usr/games
    MAIL=/var/mail/web
    SHELL=/bin/zsh
    SSH_CLIENT=[CENSORED] 23459 22
    SSH_CONNECTION=[CENSORED]  23459 [CENSORED]  22
    SSH_TTY=/dev/pts/0
    TERM=xterm
    XDG_SESSION_ID=1824414
    XDG_RUNTIME_DIR=/run/user/1000
    SHLVL=1
    PWD=/home/web
    OLDPWD=/home/web
    LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:
    

    I can't find a solution in the 3 first page of searching in Google.

    Thank you for help!

    • Admin
      Admin over 3 years
      I had that problem and solved it by installing openssh-server, then rebooting
    • Admin
      Admin over 3 years
      I also get that error message when prepending with sudo while using the --user flag.
    • Admin
      Admin about 3 years
      Du you have libpam-systemd installed?
  • Admin
    Admin almost 4 years
    Pam is already on
  • Jürgen Hötzel
    Jürgen Hötzel almost 4 years
    I added the pam debug option to the original answer. So you can check what is going on in the system journal.
  • tanius
    tanius almost 4 years
    /etc/pam.d/system-login might also be found at /etc/pam.d/systemd-user (Ubuntu 18.04 LTS here).
  • tanius
    tanius almost 4 years
    (And I think there's a tiny mistake in your answer: in the second code block, -session should be just session, no?)
  • Adrien
    Adrien over 2 years
    A year later, and this is still valid. Thanks! I was not affected by the first point but I was by the second one. (Running Ubuntu 20.04)
  • Toto
    Toto over 2 years
    How is this better than other answers?
  • Dave M
    Dave M over 2 years
    This does not provide an answer to the question. Once you have sufficient reputation you will be able to comment on any post; instead, provide answers that don't require clarification from the asker. - From Review
  • Pielo
    Pielo over 2 years
    @Toto : other solutions did not work for me. This is the only solution that worked.
  • Dave
    Dave over 2 years
    Main problem was linger for me. It was never clear that if said user LOGS OFF, all systemd --user services wills top automatically by default. To keep them running even with the user logs off, enable linger as the user. Check linger status loginctl show-user yourusername | grep Linger, enable it loginctl enable-linger yourusername