主机资讯与使用指南
SSH 断开后继续运行程序:tmux 会话使用教程
在 VPS 使用 tmux 保存终端会话,完成创建、分离、恢复和查看,说明与长期服务管理的区别。
长时间任务放进 tmux 会话
通过 SSH 执行备份、同步或安装,网络断开后普通终端里的任务可能结束。tmux 在服务器上保留终端会话,本地重新连接后可以继续查看。
这是交互任务的会话工具。需要长期运行并在开机自动启动的程序,使用 systemd、Docker restart 策略或应用自己的服务配置。
安装并创建命名会话
sudo apt update
sudo apt install -y tmux
tmux new -s backup命令按 Ubuntu/Debian 编写。backup 是本次会话名称,可改成容易识别的任务名。进入会话后再运行 rsync、备份脚本等命令。
分离之后继续运行
先按 Ctrl+B,松开,再按 D,分离当前会话。回到普通 SSH 终端后,可以关闭本地窗口,服务器上的 tmux 会话仍会保留。
不要输入 exit 来代替分离:exit 关闭当前 shell,可能结束会话及其任务。
重新连接并恢复
tmux ls
tmux attach -t backup先看有哪些会话,再连接指定名称。提示 no sessions 时,检查是否使用了不同的 Linux 用户、服务器是否重启、任务是否已经退出。
tmux 会话属于启动它的用户。root 下的会话与普通用户的会话分开,不要因为列表为空就反复启动同一个任务。
查看结果与结束会话
任务完成后看命令退出状态和输出日志。确认不用保留终端,再在会话中 exit,或使用 tmux kill-session -t backup 结束指定会话。
服务器重启会终止 tmux 会话。需要断点续传的任务仍应使用 rsync 等支持再次执行的工具,tmux 本身不保存应用的业务进度。