Ubuntu无头服务器:SSH重连后如何接入后台运行的.sh脚本?
重新访问后台运行的Minecraft服务器会话
方法1:用screen找回会话
如果启动脚本时已经用screen创建了会话:
- 重新登录后,先列出所有后台
screen会话:screen -list - 找到对应Minecraft服务器的会话ID或名称,执行以下命令重新接入:
screen -r 会话ID或名称
如果之前没在screen里启动脚本,可通过reptyr接管进程:
- 先安装
reptyr(根据系统包管理器选择命令):# Debian/Ubuntu系 apt install reptyr # RHEL/CentOS系 yum install reptyr - 找到Minecraft进程的ID:
ps aux | grep minecraft - 接管该进程,直接在当前终端操作:
reptyr 进程ID
方法2:用tmux管理会话
tmux比screen功能更丰富,适合长期管理后台服务:
- 若之前用
tmux启动了服务器:- 登录后列出所有会话:
tmux list-sessions - 接入目标会话:
tmux attach -t 会话名称或编号
- 登录后列出所有会话:
- 后续建议用
tmux启动服务器,避免再遇到这个问题:
先创建专属会话:
然后在会话里运行你的Minecraft启动脚本,之后直接关闭SSH终端即可,下次登录用上面的命令重新接入。tmux new -s mc-server
应急查看:无需接管会话的操作
如果只是想确认服务器状态或查看日志,不用接入会话也能做到:
- 检查进程是否存活:
ps aux | grep minecraft - 实时查看服务器日志(替换为你的日志文件路径):
tail -f /path/to/minecraft/server.log
内容的提问来源于stack exchange,提问作者DeveloperLewis
相关产品推荐
相关产品推荐

