私はこの~/.config/systemd/user/weechat.service
システムサービスを持っていますが、うまくいきましたが、システムのアップグレード後にプロセスが終了し、以前は発生しませんでした。 SSH セッションが切断されると、プロセスはただちに終了します。
[Unit]
Description=Weechat IRC Client (in tmux)
After=network-online.target
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/bin/tmux -2 -u new-session -d -s irc /usr/bin/weechat
ExecStop=/usr/bin/tmux kill-session -t irc
[Install]
WantedBy=default.target
状態:
% systemctl --user status weechat.service
● weechat.service - Weechat IRC Client (in tmux)
Loaded: loaded (/home/<user>/.config/systemd/user/weechat.service; enabled; vendor preset: enabled)
Active: active (exited) since Thu 2017-10-05 22:54:54 EEST; 18h ago
Process: 504 ExecStart=/usr/bin/tmux -2 -u new-session -d -s irc /usr/bin/weechat (code=exited, status=0/SUCCESS)
Main PID: 504 (code=exited, status=0/SUCCESS)
CGroup: /user.slice/user-1000.slice/[email protected]/weechat.service
├─506 /usr/bin/tmux -2 -u new-session -d -s irc /usr/bin/weechat
└─507 /usr/bin/weechat
/etc/systemd/logind.conf
:
[Login]
KillUserProcesses=no
システムを起動して再起動しようとしましたsystemd-logind.service
。
ログアウト後にkillコマンドを実行するプロファイル/プロセス/デーモンは何ですか?
ベストアンサー1
ユーザーに「待機」するようにsystemdに指示する必要があります。
# loginctl enable-linger <user>
これにより、起動時にユーザーサービスが開始され、ログアウト後もサービスを維持するためにログインします(例:SSHセッションを閉じる)。