系统管理员经常需要SSH 远程登录到Linux 服务器,经常运行一些需要很长时间才能完成的任务,比如系统备份、ftp,rsysnc,sftp,scp 传输等等。通常情况下我们都是为每一个这样的任务开一个远程终端窗口,因为它们执行的时间太长了。必须等待它们执行完毕,在此期间不能关掉窗口或者断开连接,否则这个任务就会被杀掉,一切半途而废了。
Screen是一款能够实现多窗口远程控制的开源服务程序,简单来说就是为了解决网络异常中断或为了同时控制多个远程终端窗口而设计的程序。用户还可以使用screen服务程序同时在多个远程会话中自由切换,能够做到实现如下功能。
1)会话恢复:即便网络中断,也可让会话随时恢复,确保用户不会失去对远程会话的控制。
2)多窗口:每个会话都是独立运行的,拥有各自独立的输入输出终端窗口,终端窗口内显示过的信息也将被分开隔离保存,以便下次使用时依然能看到之前的操作记录。
3)会话共享:当多个用户同时登录到远程服务器时,便可以使用会话共享功能让用户之间的输入输出信息共享。
上面screen的相关概念摘至如下链接
https://www.cnblogs.com/lpfuture/p/5786843.html
https://www.linuxprobe.com/chapter-09.html#932 《Linux就该这么学》
1、首先yum先安装screen
常用的命令参数
可以用-S参数创建会话窗口;
用-d参数将指定会话进行离线处理;
用-r参数恢复指定会话;
用-ls参数显示当前已有的会话;
以及用-wipe参数把目前无法使用的会话删除
2、新建screen会话
screen -S backup 新建一个名字叫backup的screen会话
推荐为每个screen会话取一个名字,方便分辨
当在命令行中敲下这条命令的一瞬间,屏幕会快速闪动一下,这时就已经进入screen服务会话中
输入screen -ls可以查看到当前的会话正在工作中
要想退出一个会话也十分简单,只需在命令行中执行exit命令即可
3、会话的分离与恢复
你可以不中断screen窗口中程序的运行而暂时断开(detach)screen会话,并在随后时间重新连接(attach)该会话
有几种方式
1)命令行输入screen -d 暂时断开(detach)screen会话
2)screen会话中先按下Ctrl+a,然后再按d字母键,分离该会话
恢复会话
screen -ls查看所有会话列表
screen -r 会话名或者screen -r 会话ID
可以看到恢复到了原来的会话,从而实现会话中的任务不中断
4、会话共享
当多个用户同时控制主机的时候,它可以把屏幕内容共享出来,也就是说每个用户都可以看到相同的内容
比如在另外一个终端窗口输入screen -x backup会话名
两个会话中看到的是同样的输入与输出内容
当然screen还有很多高级的用法,最常用的还是会话的分离与恢复(不间断会话)和会话共享功能
原文始发于微信公众号(WalkingCloud):Linux不间断会话服务Screen的简单用法
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/243039.html