ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

Tmux使用简介

2026/8/4 12:16:48 拓冰建站 浏览量
Tmux使用简介 TmuxTerminal Multiplexer终端复用器是 Linux 服务器开发中不可或缺的“神器”。它不仅能完美解决“SSH 断开导致服务中断”的问题还能让你在一个终端里像使用浏览器标签页一样高效管理多个任务。要彻底掌握 Tmux我们只需要搞懂它的核心原理、三层结构以及常用操作。1. 核心原理为什么它能实现“会话隔离”Tmux 采用的是客户端-服务器模型。当你在终端启动 Tmux 时它会在后台启动一个“服务器Server”作为守护进程而你操作的终端界面只是“客户端Client”。关键点在于哪怕你关闭了终端窗口或断开了 SSH 连接后台的服务器依然会持续运行里面执行的进程比如你的 FastAPI 或 Streamlit也会继续跑。下次你重新连接时只需“接入Attach”这个服务器就能无缝恢复之前的所有工作状态。2. 核心概念Session Window PaneTmux 通过三层结构来管理任务你可以把它们理解为俄罗斯套娃会话Session最高层级相当于一个“独立的工作空间”。比如你可以建一个dev会话用于开发一个ops会话用于运维。窗口Window会话内的“子容器”类似于浏览器的“标签页”。一个会话里可以开多个窗口同时跑不同服务。窗格Pane窗口内的“分割区域”。你可以把一个窗口上下或左右切开一边看日志一边敲命令。3. 最核心的操作前缀键Prefix KeyTmux 的所有快捷键都需要通过一个“前缀键”来激活默认前缀键是Ctrl b。操作方式先按下Ctrlb松开双手然后再按下一个指定的功能键。4. 常用命令速查表会话管理Session这部分是你实现“会话隔离”最常用的操作。除了快捷键你也可以直接在 Linux 命令行输入这些命令操作目的快捷键 / 终端命令说明新建会话tmux new -s name创建一个名为 name 的新会话分离会话Ctrlb然后按d退出当前界面但会话在后台继续运行查看会话tmux ls列出当前所有在后台运行的会话接入会话tmux a -t name重新进入名为 name 的会话杀死会话tmux kill-ses -t name彻底关闭并销毁指定会话窗口与窗格管理Window Pane当你已经在一个 Tmux 会话中时可以使用以下快捷键进行分屏和标签页管理注意以下均需先按Ctrlb操作目的快捷键说明左右分屏%(Shift5)将当前窗口垂直切分为左右两块上下分屏(Shift)将当前窗口水平切分为上下两块切换窗格方向键 (↑↓←→)将光标移动到相邻的窗格中新建窗口c在当前会话新建一个标签页切换窗口n(下一个) /p(上一个)在标签页之间切换关闭窗格exit或Ctrld关闭当前分屏区域翻页查看日志[进入复制模式可用 PgUp/PgDn 翻页按q退出5. 结合项目实战场景假设你想用 Tmux 来管理你写的 FastAPI 和 Streamlit 项目你可以这样操作创建一个专属会话tmux new-snewerp启动后端服务在这个窗口里直接运行你的启动脚本或命令。新建窗口启动前端按下Ctrlb松开后按c新建一个标签页。在这个新标签页里启动 Streamlit。安全离开确认服务都跑起来后按下Ctrlb然后按d。此时你会退回到普通的 Linux 命令行你可以放心地关闭 SSH 窗口。下次回来恢复重新 SSH 登录后只需输入tmux a-tnewerp你就会瞬间回到之前的界面看到两个服务依然在安稳地运行。掌握了这套逻辑你就可以彻底告别nohup和带来的日志混乱和进程管理难题了。你可以先在服务器上试着敲几个命令感受一下