当前位置:首页 > 编程笔记 > 正文
已解决

linux命令screen解决client_loop: send disconnect: Broken pipe

来自网友在路上 180880提问 提问时间:2023-11-06 20:08:46阅读次数: 80

最佳答案 问答题库808位专家为你答疑解惑

一、SSH连接服务器,client_loop: send disconnect: Broken pipe

        最近需要在服务器上运行一个需要跑很久的脚本,但ssh连接的远程服务器的命令窗口经常会报:client_loop: send disconnect: Broken pipe,这个错误是ssh 命令之后没有活动导致连接被关闭。断开ssh连接后运行的脚本就停止了。

二、screen命令

        screen是一个终端多路复用器,它允许你在一个终端窗口中运行多个会话,并在需要时进行切换。每个虚拟终端都有一个回滚历史缓冲区和一个复制粘贴机制,允许用户在窗口之间移动文本区域。

        当调用screen时,它会创建一个包含shell(或指定命令)的窗口,然后避开您的方式,以便您可以正常使用该程序。然后,您可以随时创建包含其他程序(包括更多shell)的新(全屏)窗口、关闭当前窗口、查看活动窗口列表、打开和关闭输出日志、在窗口之间复制文本、查看滚动历史记录、在窗口之间切换,等等。

        使用screen,所有窗口都完全独立运行其程序。你可以在断开SSH连接后仍然保持后台运行。

三、安装screen

Debian/Ubuntu安装命令:

sudo apt-get update && sudo apt-get install screen

CentOS/RHEL安装命令:

sudo yum install screen

Fedora安装命令:

sudo dnf install screen

Arch Linux安装命令:

sudo pacman -S screen

四、创建一个新的screen窗口

 不需要创建多个窗口时:

screen

需要创建多个窗口时,需要给每个窗口命名:

screen -S screen-name

-S后接新窗口的自己命名的窗口名称【screen-name】

如图所示:  

五、退出窗口视图

使用ctrl+a,然后输入d,退出当前窗口,也可以使用screen -d退出当前窗口。

退出后窗口,在窗口运行的程序继续运行。

六、结束窗口

在窗口输入:exit+回车。

退出窗口后,杀死在窗口运行的程序。

七、查看窗口是否在后台运行

screen -list

效果如图所示: 

screen -ls

 效果如图所示: 

八、重新进入后台运行的窗口视图

screen -r screen-name

-r后接自己命名的窗口名称【screen-name】

如图所示:

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"linux命令screen解决client_loop: send disconnect: Broken pipe":http://eshow365.cn/6-33886-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!