ssh から logout すると残してきた process が systemd に kill される
screen を残しておいたはずなのに、次に login するといなくなってる。
systemd をサーバー側でも使用している。
sshd の起動は sshd.socket -> sshd@.service 。 systemd が port を待ち受けて、来た接続毎に sshd が起動される。
ということは、 logout -> sshd 終了 -> sshd@.service 終了 -> cgroup 内に残った process を kill <- ここに巻き込まれてる?
cgroup の確認:
$ cat /proc/self/cgroup 8:net_prio:/ 7:blkio:/ 6:freezer:/ 5:devices:/ 4:memory:/ 3:cpuacct,cpu:/system/sshd@.service/32 2:cpuset:/ 1:name=systemd:/system/sshd@.service/32
/etc/pam.d/sshd に -session   optional     pam_systemd.so を書き加えて再度:
$ cat /proc/self/cgroup 8:net_prio:/ 7:blkio:/ 6:freezer:/ 5:devices:/ 4:memory:/ 3:cpuacct,cpu:/ 2:cpuset:/ 1:name=systemd:/user/myuser/c6
で、無事 kill されなくなった。