码迷,mamicode.com
首页 > 其他好文 > 详细

screen的使用和小故障

时间:2016-01-01 23:12:07      阅读:420      评论:0      收藏:0      [点我收藏+]

标签:screen

小话题:


如果在我们编译软件的时候,终端实然断了怎么办,按理论来说,在此终端下的程序都会结束。编译了老半天,白忙活了。那么可以用screen程序。

screen 模拟多个虚拟窗口,并且screen模拟的终端断了以后,screen的终端不会退出,程序继续。
screen 打开新的screen虚拟界面
也可以隐藏打开的screen终端,返回原来的终端,当然是原终端没有断线的情况下。

Ctrl+a,再按一下ctrl+d。或者直接ctrl+a,d。 按一下a,再按一下d。


想要返回screen终端,先查看一下各screen终端的ID:screen -ls
打开screen终端:screen -r Screen_ID
只有一个screen终端的情况,直接用screen -r就可以打开。

技术分享

Ctrl+a,d以后或screen终端断了以后,screen进程的父进程就会变成init。与本终端脱离父子关系。所以在终端结束以后screen中的程序不会中断。

技术分享


而在用一个新的终端连接screen -r ID  打开以后,screen会与父进程是init的screen通信(自己瞎猜的)。

技术分享


一个小故障: 在模拟终端断线的时候,再重新连上以后可以查看到SCREEN还在运行,但之前的ssh终端还没有断开,所以screen还是之前sshd的子进程。这样的情况不能重新连接上screen。

可以手动的把之前的sshd进程关闭,再重新连接screen即可。上图:

查看scrren信息,并连接,被提示screen已附加进程。

技术分享

我们查看一下现在的进程树。

技术分享

终端断开了,但是终端的sshd进程却没有断开,而之上的screen也没有转移父进程。

查看一下所在sshd的进程ID,半闭掉。

pstree -p 查看进程树并显示ID。

技术分享

关闭之。

技术分享

技术分享

可以看到已经正常了。

本文出自 “大蕃茄” 博客,请务必保留此出处http://fanqie.blog.51cto.com/9382669/1730685

screen的使用和小故障

标签:screen

原文地址:http://fanqie.blog.51cto.com/9382669/1730685

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!