最近在公司的服务器上要执行一些数据库的导入导出等耗时操作,在linux服务器上执行命令时,出现过ssh中断或者xshell各种问题导致退出客户端,进而导致执行的命令中断的现象。

screen命令正式为了避免这种现象而出现的,主要应用场景就是,对于远程xshell等终端软件ssh连接到linux服务器上,要执行耗时命令(我的数据库导入命令执行了3天),为了防止xshell等软件的问题导致ssh终端退出进而引起命令的中断,可以使用screen命令。

目前我们的服务器的环境是centos6系列的,首先需要安装screen的rpm安装包,下载地址如下:

ftp://rpmfind.net/linux/centos/6.8/os/x86_64/Packages/screen-4.0.3-19.el6.x86_64.rpm

需要添加执行权限  

 chmod +x screen-4.0.3-19.el6.x86_64.rpm 

如图:

screen

 

使用命令

rpm -ivh screen-4.0.3-19.el6.x86_64.rpm 

安装即可。

 

使用方式:

(1)建立screen session

使用命令

screen -S test

,即可建立一个名为test的screen session。

 

 

[root@localhost ~]# screen -S test

[root@localhost ~]# screen -ls
There is a screen on:
 5344.test (Attached)
1 Socket in /var/run/screen/S-root.

[root@localhost ~]#

一般建立后就直接进入到了当前session中,可以在当前session中执行各种命令,比如数据库的导入导出等耗时操作。

(2)查看当前有多少session

使用命令

screen -ls

(3)离开当前session,但不中断session

其实,直接退出xshell的当前tab终端就可以完成了。

也可以输入命令ctrl+a+d, 三个键一起使用,即按住ctrl和a,然后按下d键即可,此方法可以离开session,但是不中断session中正在执行的命令,非常适合耗时操作。

(4)恢复到某一个session中

当离开session一段时间后,登录到这台服务器上,可以使用如下命令来恢复到某一个session。

[root@localhost ~]# screen -ls
There is a screen on:
 5344.test (Detached)
1 Socket in /var/run/screen/S-root.

[root@localhost ~]# screen -rd 5344

screen4
如图所示,这里 既可以写 5344这个pid号,也可以使用test这个名字。

(5)离开当前session,并中断session

直接在当前session中敲入命令  exit 即可。

 

(6)其他相关操作

其他的相关操作,可以使用

screen --help

来查看

如图:

screen6

 

参考链接:

http://www.cnblogs.com/biggates/archive/2013/01/30/2883164.html

http://blog.csdn.net/msdnchina/article/details/44567877

http://www.cnblogs.com/mchina/archive/2013/01/30/2880680.html

 

linux 配置http代理以及epel源安装

在线上部署环境,安装软件时,经常碰到的一种情况就是使用yum来安装软件,但是有时无法访问外网,这时就需要正向代理的支持了。说到代理服务器,有正向代理,...

阅读全文

记录一次线上mysql主从数据库的迁移(数据量为亿级别)

前一阵迁移了线上服务器上的mysql的数据,数据量达到了亿级别。特在此记录一下操作流程。 现状: 目前线上使用了mysql主从库,即主库A和从库B,由于当初在安...

阅读全文

centos6下 mysql 5.5 数据目录迁移

前一篇文章 http://www.xiaomager.com/651.html 介绍了centos6下 mysql 5.5的安装过程。 当启动后,可以使用命令 ps -ef|grep mysql 看来mysql的进程情况,如...

阅读全文

欢迎留言