Linux 实用工具 Screen —— 再也不怕因为网络连接中断杀死任务了!

不知道小伙伴们是否遇到过这样的场景:

有时候,我们本地通过 SSH 连接到远程服务器并不是很稳定,经常会断开连接。如果此时我们正在做类似更新系统、DD 系统、远程传输 / 下载文件等需要一定时间的操作,就会非常难受,好不容易传了半天的文件,中断了,又得重新来传一次,还得祈祷这次别传一半断开了。

今天我们介绍的这个工具 ——screen,就是为了来解决上面这些问题的!

Screen 是什么?

Screen 是一个 Linux 里面非常古老而又非常有用的命令,提供从单个 SSH 会话中使用多个 shell 窗口(会话)的能力。当会话被分离或网络中断时,screen 会话中启动的进程仍将运行,我们可以随时重新连接到 screen 会话。

这一点对于远程登录的用户特别有用 —— 即使网络连接中断,用户也不会失去对已经打开的命令行会话的控制。

Screen 怎么用?

安装 Screen

因为 screen 是 “元老级” 的 GNU 计划项目(初始版本早在 1987 年就发布),所以不管是 apt 软件源、或者是 yum 软件源等其他软件源,都存在 screen,只需要使用软件源安装命令即可(强烈建议大家用 Debian 和 Ubuntu 系统 —— 解释使用 Debian 而不是 CentOS 的原因):

# CentOS 7
yum install screen

# Debian/Ubuntu
apt install screen

经过小伙伴提醒,CentOS 8 及以上的用户需要安装 Screen 需要用到 epel 来安装

sudo yum install epel-release  # 安装epel

sudo yum install screen  #安装screen

启动一个会话

screen -S gugu

这样就在当前的 SSH 窗口里面开启了一个新的窗口,我们可以在这个窗口里面运行那些需要长时间跑着的命令(比如 aria2 的下载、scp/rsync 的文件传输、dd 系统等等)

挂起一个会话

我们按 Control+a+d,就可以保持这个 screen 到后台并回到我们 SSH 的主终端。

好了,现在我们可以随意关掉 SSH 窗口或者在 SSH 窗口里干一些别的事情,刚刚的传输任务已经在另一个窗口继续运行了。

当然,如果你来不及按会话分离快捷键(Control+a+d)网络就断开了,Screen 会话也不会关闭,它一样会继续留在后台执行更新任务。

恢复一个会话

过了一段时间,我们想看看到底传输到什么阶段了,怎么办?

screen -r

我们又回到了刚刚新建的 gugu 这个窗口,可以看到现在传输还在进行当中。

退出一个会话

传输完成了,我们可以选择按 Control+a+d 来回到我们 SSH 的主终端。

如果你想把这个窗口关闭,也可以选择直接运行 exit 来回到我们 SSH 的主终端。

查看已经存在的 screen 终端

screen -ls
Linux 实用工具 Screen —— 再也不怕因为网络连接中断杀死任务了!

这个时候如果运行 screen -r 具体名字来恢复某个 Screen 会话了,

比如:

screen -r 3743091 或者 screen -r test 这俩命令都可以恢复 test 这个会话。

好了,这下舒服了,赶紧去试试!

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/9985

(0)
凯影的头像凯影
上一篇 2023年11月8日 下午5:21
下一篇 2023年11月9日 下午5:14

相关推荐

  • 常见IIS错误解决方法

    1、错误号401.1症状:HTTP 错误 401.1 – 未经授权:访问由于凭据无效被拒绝。分析:由于用户匿名访问使用的账号(默认是IUSR_机器名)被禁用,或者没有权限访问计算机,将造成用户无法访问。解决方案:(1)查看IIS管理器中站点安全设置的匿名帐户是否被禁用,如果是,请尝试用以下办法启用:控制面板->管理工具->计算机管理->本地用户和组,将IUS…

    2022年11月25日
    1.7K00
  • Windows远程桌面出现CredSSP加密数据修正问题解决方案

    问题现象: 解决方案:方案一:1、win+R打开运行窗口 2、输入gpedit.msc命令,点击“确定” 3、依次展开“计算机配置”->“管理模板”->“系统”->“凭据分配”设置名称: 加密数据库修正 4、双击“加密数据库修正”,将状态改为“启用”,保护级别改为“易受攻击”,应用—>确定 方案二:1、win+R打开运行窗口 2、输入regedit命令,点击…

    2023年7月28日
    1.5K00
  • 解析Vue中的虚拟DOM与Diff算法:提升性能的利器

    前言 vue中的diff算法时常是面试过程中的考点,本文将为大家讲解何为diff以及diff算法的实现过程。那么在了解diff之前,我们需要先了解虚拟DOM是什么? 虚拟DOM 虚拟 DOM (Virtual DOM,简称 VDOM) 是一种编程概念,意为将目标所需的 UI 通过数据结构“虚拟”地表示出来,保存在内存中,然后将真实的DOM与之保持同步。具体来…

    2024年3月22日
    1.5K00
  • cobbler搭建

    什么是cobbler Cobbler是一个Linux系统安装的服务,可以通过网络启动(PXE)的方式来快速安装、重装物理服务器和虚拟机,同时还可以管理DHCP,DNS等。 Cobbler可以使用命令行方式管理,也提供了基于Web的界面管理工具(cobbler-web),还提供了API接口,可以方便二次开发使用。 Cobbler是较早前的kickstart的升…

    2022年11月26日
    1.6K00
  • 如何处理CentOS Failed to load SELinux policy

    CentOS 7在启动时,卡在进度条界面一直进不去系统,如下图所示: 我们可以通过按键盘的左右方向键,可以看到提示“Failed to load SELinux policy.”,这就是造成系统一直卡住无法正常启动的原因。 原因 是因为没有正确修改系统的selinux的配置,导致系统在启动时报selinux的错误 解决方案 第一步:先重启CentOS7操作系…

    2022年6月15日
    2.0K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信