linux清服务器会话表,Linux必会工具之远程会话管理工具——screen

让我们再试着模拟刚才的场景,不过我们这次可是使用的“screen”这把利器。

e4c67f8cd58363c46fb1737271d524f2.png

在远端服务器上使用w、pstree等工具查看,比较一下和刚才看到的结果有什么不一样

d807b26559b7c6c203a70b898e834bf1.png

现在再把ssh会话窗口关闭,看看这次和上次关闭有什么不同,好像并没有什么不同,其实大不然,让我们在远端服务器上使用w、pstree等工具查看,发现虽然远程会话关闭了,但开启的进程并不有结束

a7201f00c46bc882ed43ab1242c83547.png

可是问题又来了,怎么恢复刚才的会话呢?让我们重新使用ssh连接上远程服务器后,使用screen –ls 命令列出当前有哪些screen会话在运行

c6b03223b07806d503b53d0e84b41cf5.png

是不是看到一个会话,其会话ID为3527,这就好办了,使用screen –r 3527 重新建立起刚才中断的会话

b31ffd483b08852c13d0b190826760c2.png

是不是刚才的会话又“重现”了,是不是很神奇!想一想这对于我们的开发人员、运维工程师来讲绝对是一大福音。

四、进阶使用

(1)[root@lamp ~]# screen -S editsample          #启动一个名称为editsample的会话

备注:可以开启多个screen会话

[root@lamp ~]# screen -ls

There is a screen on:

3917.edit       (Attached)

1 Socket in /var/run/screen/S-root.

然后你就可以在刚才打开的会话中执行你要的任务了,这样即使连接被中断,也不会造成任务中断,多么好啊!

(2)把一个正在运行的会话“抢”过来

[root@lamp ~]# screen -d –r   #screen –d -x也可以达到类似的效果

我现在使用screen开启了一个editsample的会话,并运行了vi /etc/passwd这个进程

cdf0bd2a3e1eb414239f96d94f2333d0.png

接下来我在另一个ssh终端窗口操作

a6a54c8197509bbbfea8f19f701130b7.png

当我执行screen –d  -r命令后,发现会话已经到我这边了,这个命令对于作为运维工程师到处“流窜”的我们特别有用

4f41fbb8310a12a8d552e8a84ac2cb9b.png

5dbd50b65879cef4e17ff79552df3fe8.png

(3)会话的扩展

【ctrl+A C】在一个screen会话中创建一个新的窗口,相当于创建一个新的shell

提示:先按ctrl+A组合键,再按C键

9874ba9bb3e332a03306e31ca3825ce0.png

【ctrl+A 】在窗口间进行切换

【ctrl+A N】切换到下一个窗口

【ctrl+A P】切换到上一个窗口

【ctrl+A  0…9】切换到指定编号的窗口

【ctrl+A W】显示所有窗口列表

919ed000e9da2dedc58ee529a601b7d6.png

可以看到当前screen会话有3个会话窗口,编号分别为0、1、2,当前活动窗口的编号为2

【ctrl+A D】退出screen会话,可以通过screen -r恢复会话

五、与 nohup比较

nohup可以临时救急,但是当我们要运行多个后台这样的命令并且不因网络连接断开而中断时,screen无疑是更好的解决方法

六、总结

screen在实际应用中确实较为常用,是运维管理人员必学工具之一!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值