为什么后台进程在 ssh 会话关闭后终止

Wes*_*mer 2 bash ssh shell-script

我使用XManager xshell作为ssh客户端,连接到远程服务器,然后执行命令:

nohup sleep 60 &
ps -ef | grep sleep
exit
Run Code Online (Sandbox Code Playgroud)

然后再次登录

ps -ef | grep sleep
Run Code Online (Sandbox Code Playgroud)

那个过程消失了!

有什么可能导致这个吗?ssh守护进程是openssh 8,服务器是redhat 7

jsb*_*ngs 6

对于systemd-logind,有(默认)设置:

KillUserProcesses=yes
Run Code Online (Sandbox Code Playgroud)

在你的logind.conf中。用户注销后,它将终止用户在登录会话期间启动的所有进程。您可以将其设置为否,或为您的用户设置以下设置:

KillExcludeUsers=yourusername
Run Code Online (Sandbox Code Playgroud)

  • @WestFarmer 请查看我链接到的手册页。 (2认同)