Eu corro 16.04 e systemd
agora mata tmux
quando o usuário desconecta ( resumo da alteração ).
Existe uma maneira de executar tmux
ou screen
(ou qualquer programa semelhante) com systemd
230? Eu li toda a discussão acalorada sobre prós e contras do comportamento, mas nenhuma solução foi sugerida.
(Eu vejo o comportamento em 229 também)
systemd
tmux
gnu-screen
WoJ
fonte
fonte
systemd-229-4ubuntu7
(das atualizações xenial) e não vejo esse comportamento. De qualquer forma, esse comportamento já foi revertido no Debiansystemd-230-2
, então provavelmente também será revertido no Ubuntu em breve.Respostas:
Usando o Ubuntu 18.04 com systemd versão 237 , nenhuma das soluções sugeridas funcionou para mim.
A solução que funcionou para mim foi
/etc/systemd/logind.conf
KillExlcudeUsers
KillExlcudeUsers=root user1 user2
)fonte
A solução adequada é desativar o comportamento do sistema ofensivo em todo o sistema.
Editar
/etc/systemd/logind.conf
( você deve sudo , é claro) e definirVocê também pode colocar essa configuração em um arquivo separado, por exemplo
/etc/systemd/logind.conf.d/99-dont-kill-user-processes.conf
.Então reinicie
systemd-logind.service
.fonte
loginctl enable-linger <user>
. Deman loginctl
: "Se ativado para um usuário específico, um gerenciador de usuários é gerado durante a inicialização e mantido após o logout. Isso permite que os usuários não conectados executem serviços de longa execução".Com base na resposta de @ Rinzwind e inspirado na descrição de uma unidade, o melhor que pude encontrar é usar o TaaS (Tmux como um Serviço) - uma instância separada genérica de
tmux
uma que se reconecta.fonte
RemainAfterExit =
fonte
tmux
interativamente, ao contrário da minha resposta)?tmux
começar comosystemd-run --remain-after-exit tmux
(ou talvez até com--scope --user
sinalizadores).Você precisa definir o
Type
serviçoforking
como explicado aqui .Vamos supor que o serviço que você deseja executar
screen
seja chamadominecraft
. Então você abririaminecraft.service
em um editor de texto e adicionaria ou editaria a entradaType=forking
na seção[Service]
.fonte
De acordo com /unix//a/287282/117599 chamando
tmux
usandotambém deve fazer o truque.
fonte