远程SSH登陆linux系统进行程序编译时,例如编译安装LNMP、LAMP,最怕网络突然断开,或者其他情况导致不得不与远程SSH服务器链接断开,远程执行的命令也被迫停止,只能重新连接,重新运行,既费时又费力。今天为大家介绍的screen工具就可以轻松的解决以上担忧。
screen简介
Screen是一个可以在多个进程之间多路复用一个物理终端的全屏窗口管理器。Screen中有会话的概念,用户可以在一个screen会话中创建多个screen窗口,在每一个screen窗口中就像操作一个真实的telnet/SSH连接窗口那样。
screen安装方法
除部分精简的系统或者定制的系统大部分都安装了screen命令,如果没有安装,CentOS系统可以执行:
Debian/Ubuntu系统执行:
(adsbygoogle=window.adsbygoogle||[]).push({});
screen使用方法
1、常用的使用方法
1.1 创建screen会话
可以先执行:
screen就会创建一个名字为test的会话。
1.2 暂时离开,保留screen会话中的任务或程序
当需要临时离开时可以用快捷键Ctrl+a d(即按住Ctrl,依次再按a,d),此时会话中的程序不会关闭,仍在运行。
1.3 恢复screen会话
当回来时可以再执行:
即可恢复到离开前创建的test会话的工作界面。如果忘记了,或者当时没有指定会话名,可以执行:screen -lsscreen会列出当前存在的会话列表,如下图:

8463.test即为刚才的screen创建的test会话,目前已经暂时退出了test会话,所以状态为Detached,当使用screen -r test后状态就会变为Attached,8463是这个screen的会话的进程ID,恢复会话时也可以使用:screen -r 8463
1.4 关闭screen的会话
执行:
会提示:[screen is terminating],表示已经成功退出screen会话。

2、远程演示
首先演示者先在服务器上执行
创建一个screen会话,观众可以链接到远程服务器上执行
观众屏幕上就会出现和演示者同步。
3、常用快捷键
Ctrl+a c :在当前screen会话中创建窗口
Ctrl+a w :窗口列表
Ctrl+a n :下一个窗口
Ctrl+a p :上一个窗口
Ctrl+a 0-9 :在第0个窗口和第9个窗口之间切换