当我和家人一起玩多人 Minecraft 时,我会使用外部服务器。有时,我的本地 PC 上的会话会断开。我可以重新打开一个新终端并重新登录服务器。我可以使用 ps aux|grep minecraft 来查看原始进程是否仍在运行,但我看不到活动或输入命令。有什么办法可以加入正在运行的进程吗?
我的意思是,当我打开终端会话并启动 Minecraft (MC) 时,我可以向 MC 服务器输入命令,例如 /list 查看用户、/weather clear 停止下雨等。
当我断开连接并重新登录时,我无法在服务器窗口中看到正在进行的活动。我可以看到进程仍在运行,但我想要做的是能够像以前一样加入进程,然后再次输入 MC 命令。
答案1
GNU Screen 是一款可让您重新连接到上一个会话的工具。只需将其安装在远程服务器上即可。
apt-get install screen
现在,当您通过 SSH 连接到机器时,只需键入screen
并按空格键。您将返回到正常终端。在这里运行您想要的任何内容(minecraft)。
现在假设您的连接断开了。但不要担心,因为它仍在您之前创建的屏幕会话中运行。您所要做的就是重新 SSH 并附加到已经运行的屏幕会话。您可以通过以下方式获取正在运行的会话列表:
screen -ls
从列表中,选择要连接的会话并输入:
screen -r <session-name>
你回来了!
这是使用 screen 可以实现的众多出色功能之一。我只写了实现 OP 想要的功能所需的最少使用信息。这里如果你感兴趣的话这是一个很好的教程。
要退出屏幕会话,只需输入exit
。