玩转云主机:远程登录回话管理 tmux

举报
oneliner 发表于 2020/04/10 15:09:59 2020/04/10
【摘要】 这个系列是介绍Linux 命令行环境常用的效率工具。有些工具不是系统默认安装的,甚至有些学习成本,但如果一个动作每天要做数十次,那花一点时间优化/简化是一件划算的事。Tmux 应该是你登录服务器,进入shell 后敲下的第一个命令,它是对整个会话(多任务多窗口)管理的工具。这篇博客 介绍了用nohup做进程保护, 也许你觉得已经够用了,但是 Tmux 真的值得拥有,虽然学习它要花10分钟时间...

这个系列是介绍Linux 命令行环境常用的效率工具。有些工具不是系统默认安装的,甚至有些学习成本,但如果一个动作每天要做数十次,那花一点时间优化/简化是一件划算的事。



Tmux 应该是你登录服务器,进入shell 后敲下的第一个命令,它是对整个会话(多任务多窗口)管理的工具。


这篇博客 介绍了用nohup做进程保护, 也许你觉得已经够用了,但是 Tmux 真的值得拥有,虽然学习它要花10分钟时间。
Tmux 强大之处是提供了对整个会话的保护和管理。会话(session)是对工作环境的整体打包,包括执行中的进程, 环境变量(好多运行时错误元凶),连接,Tabs。

这里强调一下Tabs。好多同事喜欢为每个任务打开一个putty 连接:编辑器,mongodb,git shell,Hbase...  这是一种很懒惰很落后的做法。为了让你明白这一点,我们想象浏览器怎么工作的。你不会为每个网页开一个单独的窗口,而是在一个浏览器窗口打开多个Tabs。多个Tabs 会共享这个窗口的全局配置(代理,隐私模式,cookies等环境变量),你只需在Tabs 中跳转,如果浏览器崩溃了,可以重新整体恢复所有页面, 浏览器这个功能叫会话(Session)管理。 
Tmux 提供的能力类似:在同一个shell 中提供多Tabs 能力,让每个Tab 专注一个任务,你可以任意跳转(快捷键很棒,鼠标根本用不上),如果客户端和远程server 连接中断,只要重新登录回去,可以原地恢复,相当于对Session 内所有正在执行的进程都加了 nohup。

下面是一个Tmux 录屏, 展示session 创建->Tabs创建-> 分屏->跳转->session 中断->session恢复。

image.png

【云博客的视频上传真让我没脸说,拿这个图充数吧, 你既然看到这了视频其实已经不重要】



Tmux 在很多发行版都不是默认安装的,如果你可以接受更简朴的交互和同等强大的session 保护,可以使用系统自带的Screen。



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

评论(0

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

全部回复

上滑加载中

设置昵称

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

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

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