我正在使用 Mina SSHD 客户端在 OpenSSH 服务器上运行远程命令。我正在远程服务器上执行一个长时间运行的命令,并希望它在客户端会话关闭时终止。
当我从 PC 终端运行此命令时:
\#ssh -t user@server sleep 12345
Run Code Online (Sandbox Code Playgroud)
这是我在远程机器上找到的:
\# ps -axf
---- Omitted for clarity
12158 ? Ss 0:29 /usr/sbin/sshd -4
22708 ? Ss 0:11 \\_ sshd: user@pts/3,pts/4
16894 pts/3 Ss 0:00 | \\_ -bash
17750 pts/3 R+ 0:00 | | \\_ ps -axf
17606 pts/4 Ss+ 0:00 | \\_ sleep 12345
---- Omitted for clarity
Run Code Online (Sandbox Code Playgroud)
当我终止计算机上的 ssh 客户端时,“睡眠 12345”将在远程计算机上终止。
然而,当我使用 Mina Java SSH 客户端运行完全相同的内容时,我看到了这样的结果。
SshClient client = SshClient.setUpDefaultClient();
client.start();
ConnectFuture connect = …Run Code Online (Sandbox Code Playgroud)