最近经常用弄Linux服务器的设置。装系统就弄了好几次,因为老是出问题。安装wdcp的时候也发现一个问题。远程安装的时候容易卡住并且断开连接。这时候就需要重新返回当前的会话窗口去查看状态。如果重新安装是不会继续执行的。只要用一个简单的screen命令就可以搞定了。
一、screen命令简介
Screen是一个可以在多个进程之间多路复用一个物理终端的全屏窗口管理器。Screen中有会话的概念,用户可以在一个screen会话中创建多个screen窗口,在每一个screen窗口中就像操作一个真实的telnet/SSH连接窗口那样。 有了Screen,你只需要执行sh in.sh 后,就可以关闭ssh进行喝茶,出门办事,或者用电脑玩其他的,办公什么的!不用理会安装进度! wdlinux的安装时间大约是2-5个小时!只要每2个小时重新连接ssh后恢复Screen的会话,查看是否编译安装完毕即可!
二、如何安装screen命令
除部分精简的系统或者定制的系统大部分都安装了screen命令,如果没有安装,CentOS系统可以执行:yum install screen
Debian/Ubuntu系统执行:apt-get install screen
。
三、screen命令使用方法
1、 创建screen会话 可以先执行:screen -S lamp
,screen就会创建一个名字为lamp的会话。
创建完lamp的会话以后就可以执行安装了,sh in.sh 执行完毕输入要安装的组合序号,接下来就会全自动安装一直到安装完成,在此期间,可以随时关闭SSH,或自己的电脑,安装过程依然在服务端不停的执行。
2、 离开或者关闭ssh回话,保留screen会话中的任务或程序的继续执行。
当需要临时离开时(会话中的程序不会关闭,仍在运行)可以用快捷键Ctrl+a d(即按住Ctrl,依次再按a,d)
3 、恢复screen会话,你会看到它还在自己没有停止的执行安装!
当回来时可以再执行执行:screen -r lamp
即可恢复到离开前创建的lamp会话的工作界面。
如果忘记了创建的Scerrn会话名称,或者当时没有指定会话名。可以执行:screen -ls screen
会列出当前存在的会话列表,11791.lnmp即为刚才的screen创建的lamp会话,目前已经暂时退出了lamp会话,所以状态为Detached,当使用screen -r lamp
后状态就会变为Attached,11791是这个screen的会话的进程ID,恢复会话时也可以使用:screen -r 11791
4 关闭screen的会话 执行:exit ,会提示:[screen is terminating],表示已经成功退出screen会话。
注意:自己选择的php环境要看清楚是LNMP一键安装包还是lanmp一键安装包。因为命令执行的名称错了是无法返回的。
四、screen命令语法
# screen [-AmRvx -ls -wipe][-d <作业名称>][-h <行数>][-r <作业名称>][-s ][-S <作业名称>]
参数说明
-A 将所有的视窗都调整为目前终端机的大小。
-d <作业名称> 将指定的screen作业离线。
-h <行数> 指定视窗的缓冲区行数。
-m 即使目前已在作业中的screen作业,仍强制建立新的screen作业。
-r <作业名称> 恢复离线的screen作业。
-R 先试图恢复离线的作业。若找不到离线的作业,即建立新的screen作业。
-s 指定建立新视窗时,所要执行的shell。
-S <作业名称> 指定screen作业的名称。
-v 显示版本信息。
-x 恢复之前离线的screen作业。
-ls或–list 显示目前所有的screen作业。
-wipe 检查目前所有的screen作业,并删除已经无法使用的screen作业。
附上常用快捷键:
Ctrl+a c :在当前screen会话中创建窗口
Ctrl+a w :窗口列表
Ctrl+a n :下一个窗口
Ctrl+a p :上一个窗口
Ctrl+a 0-9 :在第0个窗口和第9个窗口之间切换