主机、服务器测评
服务器促销信息及建站资源分享

Linux系统screen的安装与使用教程_Linux使用screen多重视窗管理程序可解决SSH连接中断导致任务执行失败问题

在使用Linux系统服务器时,我们会使用到SSH工具来连接自己的服务器,然后执行一些程序安装、测试之类的等等,但是有个时候可能会遇到本地网络不太好,或者服务器于本地网络连接不太好的问题,可能会遇到导致SSH连接断开的问题,由于Linux系统SSH连接的端口在断网等情况导致断开后,再次使用SSH连接会连接到新的窗口,原来执行的任务是无法查看到的,所以经常导致要重复来执行任务,非常麻烦。

这里分享一个Linux系统的Screen工具的使用方法与使用教程,Screen工具是Linux系统的多重视窗管理程序,是一个终端多路转接器,能够使用一个单一的终端窗口运行多终端的应用,因此为Linux服务器安装screen多重视窗管理程序后,在screen新建的窗口执行任务无需担心网络问题引起的SSH连接中断而导致执行任务中断。最简单的说,在Screen工具创建的窗口执行任务不用担心网络断线离线问题,即时SSH远程连接离线了Screen下执行的任务依旧会照常进行。

 

一、如何为Linux服务器安装Screen工具

1、先根据自己的系统版本选择下面对应的命令安装Screen工具!

如果你的系统使用的是RedHat/CentOS先执行下面命令安装Screen工具:

yum -y install epel-release
yum install screen

如果你的系统使用的是Debian/Ubuntu先执行下面命令Screen工具:

apt -y install epel-release
apt install screen

 

二、Screen工具使用命令介绍

下面介绍的是常用的命令,一般这几个已经足够用了。

创建指定名称的作业窗口。“<作业名称>”内容需要改成你的作业名称。例如:screen S zhuji999。

screen -S <作业名称>

显示已经创建的所有screen作业窗口列表.

screen -ls

指定名称的窗口的作业离线,就是停止指定窗口的作业。

screen -d <作业名称>

恢复离线的screen作业。

screen -r <作业名称>

进入指定名称的作业的窗口

screen -x <作业名称>

这里还有更多参数介绍:

-A  将所有的视窗都调整为当前终端机的大小。
-d<作业名称>  将指定的screen作业离线。
-h<行数>  指定视窗的缓冲区行数。
-m  即使当前已在作业中的screen作业,仍强制建立新的screen作业。
-r<作业名称>  恢复离线的screen作业。
-R  先试图恢复离线的作业。若找不到离线的作业,即建立新的screen作业。
-s  指定建立新视窗时,所要执行的shell。
-S<作业名称>  指定screen作业的名称。
-v  显示版本信息。
-x  恢复之前离线的screen作业。
-ls或–list  显示当前所有的screen作业。
-wipe  检查当前所有的screen作业,并删除已经无法使用的screen作业。

 

三、Linux服务器使用Screen工具执行任务教程

1、为自己的服务器安装好Screen工具后,执行“screen S <作业名称>”命令可以创建指定名称的作业窗口,如下图分别创建了“screen S zhuji999”和“screen S zhji888”两个作业窗口,分别作业的都是“ping www.bing.com”任务。

Linux系统screen的安装与使用教程_Linux使用screen多重视窗管理程序可解决SSH连接中断导致任务执行失败问题插图

Linux系统screen的安装与使用教程_Linux使用screen多重视窗管理程序可解决SSH连接中断导致任务执行失败问题插图1

2、为了体验效果。主机玖玖断开了自己的本地网络,于是出现了窗口断线的错误,此时我们连上本地网络,再次连接自己的Linux服务器,发现是查不到不到“ping www.bing.com”任务是否还在执行。

Linux系统screen的安装与使用教程_Linux使用screen多重视窗管理程序可解决SSH连接中断导致任务执行失败问题插图2

3、这里我们使用“screen -ls”命名来看出任务列表,可以查看到正在执行的两个任务正在执行。

Linux系统screen的安装与使用教程_Linux使用screen多重视窗管理程序可解决SSH连接中断导致任务执行失败问题插图3

4、加入我们需要查看12082.zhuji999任务的情况。可以使用“screen -x”命令再次进入到窗口。如果“screen -x 12082.zhuji999”效果如下,进入后还在执行ping任务当中。

Linux系统screen的安装与使用教程_Linux使用screen多重视窗管理程序可解决SSH连接中断导致任务执行失败问题插图4

5、如何完全停止当前screen终端并结束下面的所有任务。这里我们进入到上面创建的12145.zhji888项目里面,通过“screen -x 12145.zhji888”可以再次进入。进入后发现ping还在执行当中。如果我们想关闭这个任务窗口,并且停掉此任务窗口下的所有任务。我们按“ctrl+a”然后输入“:quit”就可以可。如下图:
Linux系统screen的安装与使用教程_Linux使用screen多重视窗管理程序可解决SSH连接中断导致任务执行失败问题插图5
再次用“screen -ls”查看,发现12145.zhji888任务窗口已经没有了。
Linux系统screen的安装与使用教程_Linux使用screen多重视窗管理程序可解决SSH连接中断导致任务执行失败问题插图6
d12082.zhuji999
另外screen工具还有很多的“ctrl+a”命令。整理如下,下面操作都只能在screen工具的任务窗口去使用。都是先从“ctrl+a”开始,然后输入对应的字母或者单词即可。和上面的推出screen工具任务差不多。
在每个screen session 下,所有命令都以 ctrl+a(C-a) 开始。
C-a ? -> Help,显示简单说明
C-a ” -> 列出终端列表
C-a A -> 重命名终端
C-a c -> 创建新的终端,并切换到该终端
C-a d -> 暂时断开会话,但所有任务都依然执行
C-a K -> 关闭当前终端,并切换到下一个终端(当没终端时 退到原始shell终端)
C-a n -> 切换到下一个终端
C-a p -> 切换到上一个终端
C-a t -> 显示当前时间,和系统的 load
C-a S -> 新建水平线分割终端
C-a Tab -> 水平线切换终端
C-a X -> 关闭当前终端
C-a + -> 扩大当前终端
C-a – -> 缩小当前终端
C-a [Space] -> 窗口切换
C-a 0-9 -> 在0-9个终端之间切换
C-a C-a -> 最近使用的2个窗口切换
C-a w -> 列出终端列表
C-a x -> 锁住当前窗口,需用用户密码解锁
C-a z -> 把当前会话放到后台执行,用 shell 的 fg 命令则可回去。
exit:关闭当前终端 (注:和“C-a c”一样
Ctrl-a:Ctrl—a:
:screen 新建 screen 终端,并运行命令
:resize 改变当前窗口高度为
:quit 退出 screen 关闭所有 screen 终端,结束其中所有任务
Ctrl-a 进入选择模式
或 Ctrl-u 光标上移一页
或 Ctrl-d 光标下移一页
或 h 光标左移一格
或 j 光标下移一行
或 k 光标上移一行
或 l 光标右移一格
选择开始,选择结束
退出选择模式
Ctrl-a ] 粘贴选择的内容
赞(1)
聲明:
1、本博客不從事任何主機及服務器租賃業務,不參與任何交易,也絕非中介。博客內容僅記錄博主個人感興趣的服務器測評結果及一些服務器相關的優惠活動,信息均摘自網絡或來自服務商主動提供;所以對本博客提及的內容不作直接、間接、法定、約定的保證,博客內容也不具備任何參考價值及引導作用,訪問者需自行甄別。

2、訪問本博客請務必遵守有關互聯網的相關法律、規定與規則;不能利用本博客所提及的內容從事任何違法、違規操作;否則造成的一切後果由訪問者自行承擔。

3、未成年人及不能獨立承擔法律責任的個人及群體請勿訪問本博客。

4、一旦您訪問本博客,即表示您已經知曉並接受了以上聲明通告。

文章名稱:《Linux系统screen的安装与使用教程_Linux使用screen多重视窗管理程序可解决SSH连接中断导致任务执行失败问题》
文章鏈接:https://www.zhuji999.com/16412.html