关闭 PC 但不终止 SSH 会话

关闭 PC 但不终止 SSH 会话

我在远程 Linux 机器上运行了一些繁重且耗时的进程。我使用笔记本电脑通过 SSH 连接到这些机器,然后在沙发上运行这些进程。

但是,当我想关闭我的笔记本电脑时,我遇到了麻烦,因为远程进程被终止了。

我做了研究,发现“screen”对我来说是一个很好的解决方案,确实如此!(只要我不关闭笔记本电脑)。有没有办法“保留”“screen”会话,以便我可以关闭它然后重新连接到会话?

答案1

听起来您正在笔记本电脑上运行屏幕会话。然后从该屏幕会话 ssh 到远程主机。关闭笔记本电脑将终止本地屏幕进程,进而终止 ssh 会话。

您要做的是从笔记本电脑 ssh 到远程主机。然后在远程主机上启动屏幕会话。当您的笔记本电脑关闭时,ssh 会话将终止,但远程屏幕会话将继续存在。

下次登录远程系统时,您可以使用“screen -r”重新连接到屏幕会话,或者如果您有多个屏幕会话,则使用“screen -r < pid >”。

注意:如果您在 ssh 终止之前忘记从远程屏幕会话中分离,则屏幕会话可能会认为它仍处于连接状态。在这种情况下,您需要先执行“screen -dr < pid >”来分离会话。

答案2

您可以使用它nohup来启动一个进程,该进程在您从计算机注销后仍将继续运行。这可能就是您正在寻找的。

答案3

如果您断开远程会话screen,则可以安全地关闭笔记本电脑。

答案4

使用 nohup。另一个选择是使用 VNC。在服务器上创建 VNC 会话。然后无论何时工作都可以连接到它。(当长时间使用某些 GUI(例如 IDE)时更有用)

相关内容