Je lance 16.04 et systemd
tue maintenant tmux
lorsque l'utilisateur se déconnecte ( résumé du changement ).
Existe-t-il un moyen d'exécuter tmux
ou screen
(ou tout programme similaire) avec systemd
230?J'ai lu toutes les discussions animées sur les avantages et les inconvénients du comportement, mais aucune solution n'a été suggérée.
(Je vois aussi le comportement en 229)
systemd-229-4ubuntu7
(de xenial-updates) et je ne vois pas ce comportement. Quoi qu'il en soit, ce comportement a déjà été inversé dans Debiansystemd-230-2
, donc il sera probablement bientôt inversé dans Ubuntu.Réponses:
En utilisant Ubuntu 18.04 avec la version 237 de systemd , aucune des solutions suggérées n'a fonctionné pour moi.
La solution qui a fonctionné pour moi était de
/etc/systemd/logind.conf
KillExlcudeUsers
KillExlcudeUsers=root user1 user2
)la source
La bonne solution consiste à désactiver le comportement systemd incriminé à l'échelle du système.
Modifier
/etc/systemd/logind.conf
( vous devez sudo , bien sûr) et définirVous pouvez également mettre ce paramètre dans un fichier séparé, par exemple
/etc/systemd/logind.conf.d/99-dont-kill-user-processes.conf
.Redémarrez ensuite
systemd-logind.service
.la source
loginctl enable-linger <user>
. Deman loginctl
: "S'il est activé pour un utilisateur spécifique, un gestionnaire d'utilisateurs est généré pour l'utilisateur au démarrage et conservé après la déconnexion. Cela permet aux utilisateurs qui ne sont pas connectés d'exécuter des services de longue durée."Sur la base de la réponse de @ Rinzwind et inspiré d'une description d'unité, le mieux que j'ai pu trouver est d'utiliser TaaS (Tmux as a Service) - une instance générique détachée d'
tmux
un qui se rattache.la source
RemainAfterExit =
la source
tmux
interactive, contrairement à ma réponse)?tmux
commencer en tant quesystemd-run --remain-after-exit tmux
(ou peut-être même avec des--scope --user
indicateurs).Vous devez définir le
Type
service surforking
, comme expliqué ici .Supposons que le service que vous souhaitez exécuter
screen
s'appelleminecraft
. Ensuite, vous ouvrezminecraft.service
dans un éditeur de texte et ajoutez ou modifiez l'entréeType=forking
sous la section[Service]
.la source
Selon /unix//a/287282/117599 invoquant en
tmux
utilisantdevrait également faire l'affaire.
la source