Screen是linux下的一种多重视窗管理程序。在使用SSH远程登陆linux时,如果连接非正常中断,重新连接时,系统将打开新的会话,无法恢复原来的会话,screen工具可以有效的解决这个问题。screen是一个终端多路转接器,在本质上,这意味着你能够使用一个单一的终端窗口运行多终端的应用。screen可以让一个或多个用户从不同终端多次登陆一个会话,并共享会话的所有特性(比如可以看到完全相同的输出),实现远程协助的功能。它同时提供了窗口访问权限机制,可以对窗口进行密码保护。

1、screen的安装

首先将系统盘插入到光驱,并挂载,挂载命令如下(CentOS7下):

]# mount /dev/sr0 /mnt

安装screen程序,命令如下:

]# rpm -ivh screen-4.1.0-0.21.20120314git3c2946.el7.x86_64.rpm

wKiom1eWk7uDPXc_AAA7OeZjBeY139.png

2、screen常用参数

-A:所有窗口适应新的显示宽度和高度。

-c file :用指定的文件代替screen的配置文件。

-d:断开连接到screen的终端(使用该命令时,screen的状态一定要是Attached,也就是说有用户连在screen里)。

-D:断开连接到screen的终端,与-d的区别在于-D会踢掉原来登录到screen的用户并让其处于logout状态。

-h lines:指定screen窗口缓冲区行数。

-list或-ls:显示当前运行的所有screen进程。

-m:在一个screen进程里再重新创建一个新的screen进程。

-r [session]:恢复离线的screen进程,若有多个断开的进程,需要指定【pid,tty,host】。

-R:先尝试恢复离线的进程,若找不到离线的作业,即建立新的screen进程。

-S sockname:指定screen作业的名称。

-v:显示screen版本信息。

-wipe:检查当前所有的screen作业,并删除已经无法使用的screen作业。

-x:加入到screen作业(多屏显示)。

–d –r:连接一个screen进程,如果该进程是attached,那么先踢掉远端用户再连接。

–D –r:连接一个screen进程,如果该进程是attached,那么先踢掉远端用户并让他logout再连接。

3、screen的简单使用

(1)、screen –S test:创建一个screen作业,可以直接运行screen命令创建,但这样创建的screen作业没有名字,推荐使用-S命令指定作业名的方式创建。

(2)、screen –list或screenls:列出当前运行的左右screen作业。

(3)、Cral+a+d:从当前screen作业剥离出去的快捷键。

(4)、screen –r test:恢复到名为test的screen作业中。

(5)、screen –x test:加入到名为test的screen作业中。

(6)、exit:从当前screen作业中退出。

(7)、screen –wipe:检查当前所有的screen作业,并删除已经无法使用的screen作业。