Ejecuto 16.04 y systemdahora mata tmuxcuando el usuario se desconecta ( resumen del cambio ).
¿Hay alguna forma de ejecutar tmuxo screen(o algún programa similar) con systemd230? Leí toda la acalorada discusión sobre los pros y los contras del comportamiento, pero no se sugirió ninguna solución.
(También veo el comportamiento en 229)
systemd
tmux
gnu-screen
WoJ
fuente
fuente

systemd-229-4ubuntu7(de xenial-updates) y no veo este comportamiento. De todos modos, este comportamiento ya se ha revertido en Debiansystemd-230-2, por lo que probablemente también se revertirá en Ubuntu pronto.Respuestas:
Usando Ubuntu 18.04 con systemd versión 237 , ninguna de las soluciones sugeridas funcionó para mí.
La solución que funcionó para mí fue
/etc/systemd/logind.confKillExlcudeUsersKillExlcudeUsers=root user1 user2)fuente
La solución adecuada es deshabilitar el comportamiento ofensivo de systemd en todo el sistema.
Edite
/etc/systemd/logind.conf( debe sudo , por supuesto) y configureTambién puede poner esta configuración en un archivo separado, por ejemplo
/etc/systemd/logind.conf.d/99-dont-kill-user-processes.conf.Luego reinicie
systemd-logind.service.fuente
loginctl enable-linger <user>. Deman loginctl: "Si está habilitado para un usuario específico, se genera un administrador de usuarios para el usuario en el arranque y se mantiene después de cerrar la sesión. Esto permite a los usuarios que no han iniciado sesión ejecutar servicios de larga duración".Basado en la respuesta de @ Rinzwind e inspirado en una descripción de la unidad, lo mejor que pude encontrar es usar TaaS (Tmux como servicio), una instancia genérica separada de
tmuxuno que se vuelve a conectar.fuente
RemainAfterExit =
fuente
tmuxinteractivamente, en lugar de mi respuesta)?tmuxcomenzar comosystemd-run --remain-after-exit tmux(o tal vez incluso con--scope --userbanderas).Debe configurar el
Typeservicioforkingcomo se explica aquí .Supongamos que
screense llama al servicio que desea ejecutarminecraft. Luego, se abriríaminecraft.serviceen un editor de texto y agregaría o editaría la entradaType=forkingen la sección[Service].fuente
De acuerdo con /unix//a/287282/117599 invocando
tmuxusandoTambién debería hacer el truco.
fuente