screen服务使用解析

一、为什么要使用screen服务

当我们在进行一些常见的远程操作时,通常首先会先进行远程ssh登录 或者telnet连接到远程服务器上,然后执行相关操作,或程序启动等。
1、程序所需的执行时间过长,可能需要挂载几天的那种,可能会自动中断;又可能,如果当前网络不稳定,或者本机出现故障,导致客户端连接服务器失败,命令被迫停止;甚至有可能自己不小心关掉了客户端导致命令被迫停止。

2.在执行文件打包操作时,打包操作的输出信息占满了用户的屏幕界面,如果这时候还想安装某个服务程序,那只好再开一个远程会话的终端。终端开多了自己都分不清每个终端窗口是干什么的了。

3.想共享会话内容
基于以上,我们可以使用screen服务,在程序异常中断后能恢复。

二、安装screen服务

RHEL中并没有默认安装screen服务程序,需要配置YUM仓库来安装它。

yum install screen -y //有了这个-y就不用在安装的过程中输入y了,自动确认

看到Complete!就安装好了

三、使用screen

1、创建会话窗口。创建后生成一个新的shell页面,在这个页面里做的任何操作都能被记录下来

screen -S test //test为会话窗口的名字,任意取

 2、在新生成的shell页面里,我们可以输入要执行的操作,此处以追踪/var/log/messages为例

3、随后我们在新shell页面里按下ctrl+a 再按下d ,退出了screen,但 追踪的任务仍在执行

4.若想再次进入追踪任务,先用screen -ls查看当前用户的screen窗口,19088是会话号,test是会话名,Detached表明该会话没有用户登录,Attached表明有用户登录

5、随后,针对Detached的会话,使用以下命令再次进入

screen -r test //这里的test也可以换成会话号 19088

 针对Attached的会话,想要进入,需要先把目前登录的用户踹掉,再进去

screen -d -r test  //-d能让test先离线,等同于踹掉当前用户

四、测试screen

1、直接把Xshell关掉,模拟忽然的掉线,然后重开Xshell,发现会话依然存在,

screen -r test 恢复会话,发现掉线之前的输出内容一致

问题:比如有个程序在会话里运行,那xshell忽然断了,在断了到重新连接xshell这段时间里程序还在运行不?如果没有运行,是需要恢复会话后再继续运行?还是连接之后就自动运行了?

答:

如果你在 Xshell 中运行了一个程序,并且该程序在一个 Screen 会话中运行,然后 Xshell 连接突然断开,那么这个程序将继续在后台运行,不会因为 Xshell 断开连接而停止。因此程序会持续输出内容,但是由于xshell断了,因此输出的内容不会呈现在xshell的screen会话中,这部分内容会丢失。

当重新连接到 Xshell ,原来的会话也不会自动继续输出信息到 Xshell。需要手动使用 screen -r 命令来重新连接到之前的 Screen 会话,然后会话中的输出才会再次显示在 Xshell 上。所以,使用 screen -r 命令重新连接到之前的 Screen 会话,会发现输出的内容还和xshell断掉时一致。

2、如果想要彻底删除test这个会话,在进入的新的Shell页面ctrl + c 随后输入exit 

这样彻底删掉了test这个会话

五、共享会话

当终端A和终端B以相同用户登录同一个centos系统(或者叫服务器系统),终端A使用下面的指令创建会话

screen -S linux  //linux为会话名

终端B可以通过下面的指令,看到终端A在创建的linux会话中的一切操作.有点像共享屏幕的感觉

screen -x

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/5772.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux(ubuntu)—— 用户管理user 用户组group

一、用户 1.1、查看所有用户 cat /etc/passwd 1.2、新增用户 useradd 命令,我这里用的是2.4的命令。 然后,需要设置密码 passwd student 只有root用户才能用passwd命令设置其他用户的密码,普通用户只能够设置自己的密码 二、组 2.1查看…

基于ROS从零开始构建自主移动机器人:仿真和硬件

书籍:Build Autonomous Mobile Robot from Scratch using ROS:Simulation and Hardware 作者:Rajesh Subramanian 出版:Apress 书籍下载-《基于ROS从零开始构建自主移动机器人:仿真和硬件》您将开始理解自主机器人发…

aic8800 linux

编译方法参考 http://t.csdnimg.cn/epR89 aic8800 源码在 github 里。同样需要 cfg80211 和 mac80211 aic_load_fw/aic_load_fw.ko aic8800_fdrv/aic8800_fdrv.ko都放到放 .ko 的地方 src/USB/driver_fw/drivers/aic8800 就是源码,没有蓝牙的型号不需要aic_btusb …

ip地址与硬件地址的区别是什么

在数字世界的浩瀚海洋中,每一台联网的设备都需要一个独特的标识来确保信息的准确传输。这些标识,我们通常称之为IP地址和硬件地址。虽然它们都是用来识别网络设备的,但各自扮演的角色和所处的层次却大相径庭。虎观代理小二将带您深入了解IP地…

6.k8s中的secrets资源

一、Secret secrets资源,类似于configmap资源,只是secrets资源是用来传递重要的信息的; secret资源就是将value的值使用base64编译后传输,当pod引用secret后,k8s会自动将其base64的编码,反编译回正常的字符…

HTTP/1.1、HTTP/2、HTTP/3 的演变

HTTP/1.1、HTTP/2、HTTP/3 的演变 HTTP/1.1 相比 HTTP/1.0 提高了什么性能?HTTP/2 做了什么优化?HTTP/3 做了哪些优化? HTTP/1.1 相比 HTTP/1.0 提高了什么性能? HTTP/1.1 相比 HTTP/1.0 性能上的改进: 使用长连接的…

再生龙clonezilla使用方法

目录 本文相关内容的介绍服务器窗口重定向引导进入再生龙系统检查本机操作系统的引导模式 再生龙基础功能选择选择 device-image选择ssh_server 网络配置ssh_server 配置ssh_server 镜像存储路径 再生龙抓取操作系统抓取镜像的命名 再生龙恢复操作系统拉取镜像的选择 本文相关内…

【16-Ⅰ】Head First Java 学习笔记

HeadFirst Java 本人有C语言基础,通过阅读Java廖雪峰网站,简单速成了java,但对其中一些入门概念有所疏漏,阅读本书以弥补。 第一章 Java入门 第二章 面向对象 第三章 变量 第四章 方法操作实例变量 第五章 程序实战 第六章 Java…

收藏:关于闭包表

参考视频:【IT老齐513】经典树形数据结构-闭包表_哔哩哔哩_bilibili, 这个视频系列的确不错,500多个了。 闭包表,其实就是用来做树形结构的时候,如何快速找到某个节点下的所有后代节点,用两张表去完成&…

机器学习实战-聚类算法

聚类算法是一种无监督学习的算法,用于将数据集中的数据分成不同的聚类或组。聚类算法是数据挖掘和机器学习领域中常见的技术之一,具有广泛的应用。 以下是聚类算法的一些知识点: 聚类算法的目的是将数据集划分为不同的组,使得组内…

C++ 矩阵

目录 了解矩阵的数学原理(大学线性代数) 矩阵及转置矩阵 矩阵乘法 矩阵快速幂 相伴矩阵模板 [相伴矩阵,快速矩阵幂]CSES1722 Fibonacci Numbers 了解矩阵的数学原理(大学线性代数) 矩阵及转置矩阵 这里A就是一个矩阵&…

uniapp 桌面应用插件 Ba-Launcher

简介(下载地址) Ba-Launcher 可以让你的应用成为简单的桌面应用,如需扩展功能,请联系我。 截图展示 可关注博客,实时更新最新插件: uniapp 常用原生插件大全 使用方法 使用方法也很简单,在插…

PG数据库结构与oracle比较

1.数据库集簇逻辑结构 数据库集簇概念:一个大的数据库是由若干个小的数据库组成,实现数据的隔离存放,在概念上应该是与mysql一样的 在mysql中可以用show database列出数据库 PG中用\l 数据库对象存放在数据库中: PG中的所有数据…

计算机英文论文常见错误写作习惯3

目录 第一部分 Numbers and Equations ‘such as’ and ‘etc.’ 第二部分 第一部分 Numbers and Equations 两个非常常见的错误是关于阿拉伯数字和方程式的表示。中国作家通常写阿拉伯数字,而不是拼出单词。然而,使用阿拉伯数字本身并不是一个错误…

简约大气的全屏背景壁纸导航网源码(免费)

简约大气的全屏背景壁纸导航网模板 效果图部分代码领取源码下期更新预报 效果图 部分代码 <!DOCTYPE html> <html lang"zh-CN"> <!--版权归孤独 --> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible…

工厂模式和策略模式区别

工厂模式和策略模式都是面向对象设计模式&#xff0c;但它们的目的和应用场景有所不同。 工厂模式是一种创建型设计模式&#xff0c;旨在通过使用一个工厂类来创建对象&#xff0c;而不是直接使用new关键字来创建对象。这样做可以使系统更容易扩展和维护&#xff0c;因为新的对…

图论之最短路算法模板总结

来个大致的分类&#xff1a; 朴素的迪杰斯特拉&#xff1a; 实现&#xff1a; 我们让s表示当前已经确定的最短距离的点&#xff0c;我们找到一个不在s中的距离最近的点t&#xff0c;并用t来更新其他的点。 下面是AC代码&#xff1a; #include<bits/stdc.h> using nam…

C语言-整体内容简单的认识

目录 一、数据类型的介绍二、数据的变量和常量三、变量的作用域和生命周期四、字符串五、转义字符六、操作符六、常见的关键字6.1 关键字static 七、内存分配八、结构体九、指针 一、数据类型的介绍 sizeof是一个操作符&#xff0c;是计算机类型/变量所占内存空间的大小   sc…

中间件之异步通讯组件RabbitMQ入门

一、概述 微服务一旦拆分&#xff0c;必然涉及到服务之间的相互调用&#xff0c;目前我们服务之间调用采用的都是基于OpenFeign的调用。这种调用中&#xff0c;调用者发起请求后需要等待服务提供者执行业务返回结果后&#xff0c;才能继续执行后面的业务。也就是说调用者在调用…

Java IO流(二)

1. 缓冲流 1.1 字节缓冲流概述 当对文件或其他数据源进行频繁的读/写操作时&#xff0c;效率比较低&#xff0c;这时如果使用缓存流就能够更高效地读/写信息。 比如&#xff0c;可以使用缓冲输出流来一次性批量写出若干数据减少写出次数来提高写出效率。 如果用生活中的例子做…