开源软件

Linux 故障排除:关闭 SSH 会话后如何保存工作状态?

大多数时候,我用 SSH 命令行去连接我的远程服务器。不幸的是,今天断电了,网络集线器也关闭了,所以我的SSH会话丢失了。如果你的一个重要工作的SSH会话丢失了你会怎么办?这里有个叫做 Tmux 的简单工具,它会在 Putty 或者 SSH 会话结束之后保持一个进程记录你的工作。

Tmux 是一个终端复用器。它支持单个窗口多终端的创建、访问、控制。Tmux 在你在断开连接之后继续运行,当你重新连接就能获得之前的工作状态。

下面是具体的操作过程:

首先,在你的远程计算机里面安装 Tmux.

基于 RPM 的系统:
yum install tmux

基于 DEB 的系统:

apt-get install tmux

在安装 Tmux 之后 SSH 连接到你的远程计算机上,这里以 CentOS 7 为例。

ssh root@ip地址

打开你的终端,然后运行 Tmux.

tmux

然后运行你想执行的任务.

这里我以升级 CentOS 7 为例。

yum update

运行结果:

root@server1_001

现在这个更新进程正在运行。然后按下"D"之后按下"Ctrl+B"来离开 tmux 会话.

现在,回到实际的终端,但是此时工作进程仍在 tmux 会话里面运行。用 SSH 断开并重新连接到远程计算机。在终端里输入 tmux attach

tmux attach

下图显示你的工作任务处于什么状态

root@server1_002

类似的,你可以在 tmux 会话中运行你需要的任务,数目不限。当然,你可以通过 Ctrl-B 和 $ 对每个会话重命名。

你可以查看当前运行的 tmux 会话数目:

tmux list-sessions

结果举例:

0: 1 windows (created Thu Jan 8 15:13:42 2015) [80x23]
1: 1 windows (created Thu Jan 8 15:20:05 2015) [80x23]

Tmux 的功能远远不止以上所介绍的,我们可以在远程计算机上执行需要长时间执行的任务后断开连接,在之后的时间我们可以重新登录后通过 Tmux 查看运行状态。

你也可以通过以下命令查看更多内容:

man tmux

原文链接:http://www.unixmen.com/linux-troubleshooting-keep-process-running-putty-ssh-session-closed/

软件主页:http://tmux.sourceforge.net/

对这篇文章感觉如何?

太棒了
0
不错
0
爱死了
0
不太好
0
感觉很糟
0
TO LIVE IS TO CHANGE THE WORLD

    You may also like

    2 Comments

    1. screen!!!!!!!!

      1. 哈哈,没错,sreen 也可以。但是 tmux 专门干这个事儿的,更强大。

    Leave a reply

    您的电子邮箱地址不会被公开。

    此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

    More in:开源软件

    开源软件

    来点节奏感吧!在 Linux 上用 Hydrogen 敲鼓

    借助现代科技,音乐不需要从乐器演奏出来,通过电子合成器就可以创作出优美的音乐。Hydrogen 应用是一个功能齐全并且开源的鼓音乐合成器,并且使用简单,无论新手还是专业人士都能够很快上手。
    开源软件

    五个在 Linux 下替代微软 Exchange 的开源方案

    电子邮件和群件服务市场一直以来被微软 Exchange 统治。但仍有许多组织和企业由于其价格或对数据安全的重视,希望能够有其他更优的产品来替代它。本文将为您推荐基于 Linux 并开源的群件系统,它们各有其擅长的领域,个人和企业用户都能够从中选择适合自己的一款。