tmux 入门:SSH 断线也不丢任务的终端复用神器

举报
yd_92142965 发表于 2026/10/24 15:59:40 2026/10/24
【摘要】 如果你经常用 SSH 连服务器,一定遇到过这种崩溃时刻:正在跑一个要几小时的任务,网络一抖,SSH 断了,任务跟着一起没了。或者你想同时看日志、改配置、跑命令,窗口切来切去手忙脚乱。tmux 就是为解决这类问题而生的终端复用工具。它在服务器上创建一个"会话",你所有的终端操作都跑在这个会话里;SSH 断线只是断开了你和会话的连接,会话本身还在服务器上好好跑着,重连之后一键恢复,分毫不差。安装...

如果你经常用 SSH 连服务器,一定遇到过这种崩溃时刻:正在跑一个要几小时的任务,网络一抖,SSH 断了,任务跟着一起没了。或者你想同时看日志、改配置、跑命令,窗口切来切去手忙脚乱。

tmux 就是为解决这类问题而生的终端复用工具。它在服务器上创建一个"会话",你所有的终端操作都跑在这个会话里;SSH 断线只是断开了你和会话的连接,会话本身还在服务器上好好跑着,重连之后一键恢复,分毫不差。

安装

主流发行版都是一条命令:

Debian/Ubuntu:sudo apt install tmux -y CentOS/RHEL:sudo yum install tmux -y

装完输入 tmux 回车,你就进入了一个 tmux 会话,底部会多一条绿色状态栏。

三个核心概念

tmux 的世界里只有三层:会话(session)、窗口(window)、窗格(pane)。

  • 会话:一次"工作现场",比如"今晚的部署"。会话可以断开(detach)再恢复(attach),里面的进程不受影响。
  • 窗口:相当于浏览器的标签页,一个会话里可以开多个窗口,用编号切换。
  • 窗格:把一个窗口切分成上下/左右小格,同时看日志和敲命令。

所有 tmux 快捷键都以"前缀键"开头,默认是 Ctrl+b:先按 Ctrl+b 松开,再按功能键。

最常用的快捷键

  • `Ctrl+b d`:断开会话(任务继续跑)
  • `Ctrl+b c`:新建窗口
  • `Ctrl+b n / p`:下一个 / 上一个窗口
  • `Ctrl+b %`:左右分屏
  • `Ctrl+b "`:上下分屏
  • `Ctrl+b` + 方向键:在窗格间移动
  • `Ctrl+b x`:关闭当前窗格

实战:让长任务不断线

1. SSH 登录服务器后输入 tmux new -s job,创建一个名叫 job 的会话。 2. 在里面启动你的长任务,比如 ./train.sh。 3. 按 Ctrl+b 再按 d 断开会话,这时你甚至可以直接关闭 SSH,任务照跑。 4. 下次 SSH 上来,输入 tmux attach -t job,熟悉的终端原样回来,任务进度都在。

想看有哪些会话:tmux ls;会话彻底不用了,在里面输入 exit 退出即可。

两个顺手的小配置

默认前缀键 Ctrl+b 按起来别扭,可以换成 Ctrl+a;再打开鼠标模式,就能用鼠标点选窗格、滚轮翻历史。把下面几行写进 ~/.tmux.conf:

set -g prefix C-a
unbind C-b
set -g mouse on

改完执行 tmux source ~/.tmux.conf 生效。

tmux 学会这十几个按键就够用了。从今天起,告别"SSH 断线=任务重来"的噩梦——你的长任务,值得一个不会消失的终端。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。