热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Centos命令系列之screen

摘要作为运维人员经常会遇到等到远程主机的链接因为网络原因或者别的其他不可抗拒的原因断掉,此时远程为执行完成的命令也会断掉而导致很多任务需要重新执行。这给大家介绍一个在这种情况

摘要

作为运维人员经常会遇到等到远程主机的链接因为网络原因或者别的其他不可抗拒的原因断掉,此时远程为执行完成的命令也会断掉而导致很多任务需要重新执行。

这给大家介绍一个在这种情况下很好用的命令 screen,具体好用在那里,下面具体介绍,包括从其安装到配置到使用

What to do

在正式介绍之前,先给大家介绍下 screen 都能做什么事情

  • 通过一个SSH session使用多个shell窗口
  • 即使网络断开链接也能保持shell窗口处理激活状态
  • 可以在任何地方断开或者重连同一个shell session
  • 不用为了跑一个耗时的任务而长时间保持几个shell session处于激活状态

安装

Centos下命令安装一般都采用两种方式,YUM和RPM包的方式。这里分别介绍

YUM安装

yum install -y screen

RPM安装

对于下载 RPM 包,建议去 http://rpm.pbone.net/ 下载

wget ftp://bo.mirror.garr.it/1/slc/centos/7.1.1503/os/x86_64/Packages/screen-4.1.0-0.19.20120314git3c2946.el7.x86_64.rpm
rpm -ivh screen-4.1.0-0.19.20120314git3c2946.el7.x86_64.rpm

验证安装

root@pts/1 $ which screen
/usr/bin/screen

root@pts/1 $ screen -v
Screen version 4.01.00devel (GNU) 2-May-06

使用

screen

在开始使用 screen 之前,执行下面的命令

root@pts/1 $ ps -ef|grep screen
root 6297 2410 0 14:02 pts/1 00:00:00 grep --color=auto screen

然后输入 screen 回车,感觉打开了一个新的shell session

screen -list

这个时候我们在执行上面的ps命令和screen -list查看结果

root@pts/2 $ ps -ef|grep screen
root 6335 2410 0 14:02 pts/1 00:00:00 screen
root 6476 6337 0 14:02 pts/2 00:00:00 grep --color=auto screen

root@pts/2 $ screen -list
There is a screen on:
6336.pts-1.192 (Attached)
1 Socket in /var/run/screen/S-root.

screen -list是查看开启的screen列表

新增screen ctrl+a+c

为了验证新增screen和后面的功能,在上面的开启的第一个screen session中执行top命令

从当前的screen session开启一个新的screen session可以使用快捷键 ctrl+a+c

看到开启了一个新的 screen session,一个没有执行top的新session

screen切换 ctrl+a+n/p

ctrl+a+n 切换到下一个

ctrl+a+p 切换到上一个

需要说明的是在切换的时候N多session组成一个类似环状,ctrl+a+n切换到最后一个之后在切换久切换到了第一个,

同理ctrl+a+p切换到第一个之后在切换久切换到了最后一个screen session

离开screen ctrl+a+d

注意括号中的状态值,由Attached变成Detached

[detached from 6336.pts-1.192]

root@pts/1 $ screen -list
There is a screen on:
6336.pts-1.192 (Detached)
1 Socket in /var/run/screen/S-root.

再连接到screen ctrl+r[+name]

当系统只有一个screen处于 Detached状态的话,直接输入ctrl+r回车就可以进入screen

如果有多个

root@pts/1 $ screen -list
There are screens on:
9944.lc (Detached)
9766.pts-1.192 (Detached)
6336.pts-1.192 (Detached)
3 Sockets in /var/run/screen/S-root.

就需要执行ctrl+r+9766.pts-1.192

这里其实输入前面的数字或者后面的字符串都行,比如

ctrl+r+6336
ctrl+r+pts-1.192

pts-1.192 是由系统生成的,对应用户而言没有明确的意义。我们可以通过screen -S lc 命令去自定义这个值,结果如上面的9944.lc

锁住screen ctrl+a+x

Screen used by root  on 192.
Password:

使用的时候输入密码即可

停止screen exit or ctrl+a+k

当你跑完脚本或者执行完任务的时候,一般建议停止screen,也就是真正的退出screen


简书地址:Centos命令系列 之 screen



公众号: DailyJobOps

    公众号: DailyJobOps    


推荐阅读
  • 基于PgpoolII的PostgreSQL集群安装与配置教程
    本文介绍了基于PgpoolII的PostgreSQL集群的安装与配置教程。Pgpool-II是一个位于PostgreSQL服务器和PostgreSQL数据库客户端之间的中间件,提供了连接池、复制、负载均衡、缓存、看门狗、限制链接等功能,可以用于搭建高可用的PostgreSQL集群。文章详细介绍了通过yum安装Pgpool-II的步骤,并提供了相关的官方参考地址。 ... [详细]
  • CEPH LIO iSCSI Gateway及其使用参考文档
    本文介绍了CEPH LIO iSCSI Gateway以及使用该网关的参考文档,包括Ceph Block Device、CEPH ISCSI GATEWAY、USING AN ISCSI GATEWAY等。同时提供了多个参考链接,详细介绍了CEPH LIO iSCSI Gateway的配置和使用方法。 ... [详细]
  • Vagrant虚拟化工具的安装和使用教程
    本文介绍了Vagrant虚拟化工具的安装和使用教程。首先介绍了安装virtualBox和Vagrant的步骤。然后详细说明了Vagrant的安装和使用方法,包括如何检查安装是否成功。最后介绍了下载虚拟机镜像的步骤,以及Vagrant镜像网站的相关信息。 ... [详细]
  • Linux下安装免费杀毒软件ClamAV及使用方法
    本文介绍了在Linux系统下安装免费杀毒软件ClamAV的方法,并提供了使用该软件更新病毒库和进行病毒扫描的指令参数。同时还提供了官方安装文档和下载地址。 ... [详细]
  • 本文介绍了在无法联网的情况下,通过下载rpm包离线安装zip和unzip的方法。详细介绍了如何搜索并下载合适的rpm包,以及如何使用rpm命令进行安装。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • 本文介绍了在Windows环境下如何配置php+apache环境,包括下载php7和apache2.4、安装vc2015运行时环境、启动php7和apache2.4等步骤。希望对需要搭建php7环境的读者有一定的参考价值。摘要长度为169字。 ... [详细]
  • Windows 7 部署工具DISM学习(二)添加补丁的步骤详解
    本文详细介绍了在Windows 7系统中使用部署工具DISM添加补丁的步骤。首先需要将光驱中的安装文件复制到指定文件夹,并进行挂载。然后将需要的MSU补丁解压并集成到系统中。文章给出了具体的命令和操作步骤,帮助读者完成补丁的添加过程。 ... [详细]
  • Centos7搭建ELK(Elasticsearch、Logstash、Kibana)教程及注意事项
    本文介绍了在Centos7上搭建ELK(Elasticsearch、Logstash、Kibana)的详细步骤,包括下载安装包、安装Elasticsearch、创建用户、修改配置文件等。同时提供了使用华为镜像站下载安装包的方法,并强调了保证版本一致的重要性。 ... [详细]
  • 本文记录了作者对x265开源代码的实现与框架进行学习与探索的过程,包括x265的下载地址与参考资料,以及在Win7 32 bit PC、VS2010平台上的安装与配置步骤。 ... [详细]
  • CentOS7.8下编译muduo库找不到Boost库报错的解决方法
    本文介绍了在CentOS7.8下编译muduo库时出现找不到Boost库报错的问题,并提供了解决方法。文章详细介绍了从Github上下载muduo和muduo-tutorial源代码的步骤,并指导如何编译muduo库。最后,作者提供了陈硕老师的Github链接和muduo库的简介。 ... [详细]
  • 通过Anaconda安装tensorflow,并安装运行spyder编译器的完整教程
    本文提供了一个完整的教程,介绍了如何通过Anaconda安装tensorflow,并安装运行spyder编译器。文章详细介绍了安装Anaconda、创建tensorflow环境、安装GPU版本tensorflow、安装和运行Spyder编译器以及安装OpenCV等步骤。该教程适用于Windows 8操作系统,并提供了相关的网址供参考。通过本教程,读者可以轻松地安装和配置tensorflow环境,以及运行spyder编译器进行开发。 ... [详细]
  • 在Windows10系统上使用VMware创建CentOS虚拟机的详细步骤教程
    本文详细介绍了在Windows10系统上使用VMware创建CentOS虚拟机的步骤,包括准备条件、安装VMware、下载CentOS ISO文件、创建虚拟机并进行自定义配置、设置虚拟机的ISO与网络、进行安装和配置等。通过本文的指导,读者可以轻松地创建自己的CentOS虚拟机并进行相应的配置和操作。 ... [详细]
  • LINUX学习之centos7营救模式
    今天卸载软件的时候,不小心把GNOME的一些组件给卸了,导致桌面无法正常开启,会卡在启动过程中,而我的开机启动模式又是设置为图形界面,所以一开LINUX就卡住了,进入不了命令行界面 ... [详细]
author-avatar
翻版的袁城
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有