Sample Header Ad - 728x90

How do you keep systemd user services alive over mosh?

2 votes
1 answer
2507 views
I have a few services (such as syncthing) set up as user-level systemd services on my Arch machine. They work great when I ssh in, but when I connect using mosh, they seem to start and then immediately stop again. For instance, I can connect with mosh, and do systemctl --user status syncthing and get back that it's running or shutting down; then, repeating the command, I get Failed to connect to bus: No such file or directory Based on other similar questions, I've checked that $XDG_RUNTIME_DIR is set within the mosh session: $ echo $XDG_RUNTIME_DIR /run/user/1000 Indeed, it seems the user manager shuts down cleanly, even though I'm still connected to the session: $ systemctl status user@1000.service ● user@1000.service - User Manager for UID 1000 Loaded: loaded (/usr/lib/systemd/system/user@.service; static; vendor preset: disabled) Active: inactive (dead) [...] Aug 16 18:36:56 ip-172-70-3-138 systemd: Closed GnuPG cryptographic agent and passphrase cache (restricted). Aug 16 18:36:56 ip-172-70-3-138 systemd: Reached target Shutdown. Aug 16 18:36:56 ip-172-70-3-138 systemd: Starting Exit the Session... Aug 16 18:36:56 ip-172-70-3-138 systemd: Received SIGRTMIN+24 from PID 7877 (kill). Aug 16 18:36:56 ip-172-70-3-138 systemd: Stopped User Manager for UID 1000. How do I keep the services alive? --- **Update:** Tmux sessions themselves don't start or keep systemd services alive, at least on my system. I haven't been able to find out whether that's correct behavior or not, but it seems to me a tmux session should keep systemd from closing things down. Consider the case where I'm editing a file using emacsclient: I would expect that if my connection dropped for a minute, whether using mosh or tmux, the emacs daemon would stay alive.
Asked by Violet (123 rep)
Aug 16, 2017, 06:49 PM
Last activity: Aug 17, 2017, 09:56 AM