【深度学习高效小trick】使用Linux服务器一段时间后出现‘Socket error Event: 32 Error: 10053’,快速带你解决连接失败!-CSDN博客

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

问题描述

        使用【Xshell】软件的时候我们通常会把程序挂在【Xshell】主页上这样可以随时随地的看到深度学习代码训练的进程。但是把自己的程序挂上一天或者一段时间不操作【Xshell】就会出现这个问题。然后你再次连接还可以连接就是你的程序得重新跑了。

         然而当你再次连接后可能过上三五分钟又出现这个提示并且断开了是不是很烦

        下面的方法可能帮助你一起看看吧


原因分析

使用【Xshell】软件用ssh连接是如果你连接过于频繁或者连接之后长时间不操作都会出现这个报错


问题解决

三种解决方案三种不同的思想。我们一起尝试

①修改配置文件

        在Linux服务器终端上输入如下命令

1.使用管理员权限进入修改配置文件

sudo vim /etc/ssh/sshd_config

         这里可能会让你输入密码。输入你的管理员密码即可。

2.修改某些参数。

#ClientAlivenInterval 修改成【60】

#ClientAlivenCountMax修改成【3】

具体操作如下

        使用管理员权限进入修改配置文件进入页面之后按【i】进入编辑状态。进入成功后左下角的标志为下

        然后找到这两个位置修改成上面要求的参数

 参数解释

设置SSH空闲超时退出时间,可降低未授权用户访问其他用户ssh会话的风险

ClientAliveInterval 60 每隔60秒发送一次请求给client然后client响应从而保持连接。

ClientAliveCountMax 3 发出请求后客户端没有响应的次数达到3次就自动断开连接正常情况下不会不响应。

        然后按键盘左上角的【Esc】退出编辑成功退出后左下角会出现这个页面。

        再依次按英文的【:】【w】[【q】【!】,效果如下。最后按个回车保存就可以了。

        按完回车之后出现这个页面

        就代表编辑成功了

3.重启sshd服务 

systemctl restart sshd

 ②不修改配置文件直接在SSH远程连接的时候添加参数

        不修改配置文件直接在SSH远程连接时命令加参数即ssh -o ServerAliveinterval=60 root@'远程连接IP地址'这样就只会在当前需要的远程连接中保持持久的连接 并不是所有的远程连接都需要保持持久连接的

[root@Jenkins ~]# ssh -o ServerAliveinterval=60 root@192.168.1.33
Last login: Wed May 18 14:53:19 2022 from 192.168.1.30

[root@Web1 ~]# ifconfig ens33
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.33  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 240e:39a:39b:cd10:20c:29ff:fec1:8e32  prefixlen 64  scopeid 0x0<global>
        inet6 fe80::20c:29ff:fec1:8e32  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:c1:8e:32  txqueuelen 1000  (Ethernet)
        RX packets 756  bytes 66547 (64.9 KiB)
        RX errors 0  dropped 112  overruns 0  frame 0
        TX packets 549  bytes 52204 (50.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


 ③使用nohup后台运行深度程序

        nohup的意思就是永久执行是no hang up的缩写指不间断不挂断。运行一个进程的时候不想让其在你退出账号时关闭即可用nohup。nohup用于不挂断地运行命令。nohup在不规定的情况下所以输出内容会到nohup.out中。

nohup运行命令可以使命令永久的执行下去和用户终端没有关系例如我们断开SSH连接都不会影响运行注意了nohup没有后台运行的意思&是指在后台运行但当用户推出(挂起)的时候命令自动也跟着退出。 

       在跑时间比较长的程序或者打印信息比较多或者网络不稳定时可以采用后台运行程序然后把打印信息保存在文件中等程序结束后再检查日志

         一般在终端运行自己的代码指令时候加上【nohup】具体格式用这个就够了

nohup python A.py >> /home/my.log 2>&1 &

        其中A.py是自己要运行的命令 /home/my.log是自己要存储代码运行的日志文件即你在前台看到什么都会给你写进去这个log文件。

         

        其中
1. 最后一个“&”表示后台运行程序
2. “nohup” 表示程序不被挂起
3. “python”表示执行python代码
4. “-u”表示不启用缓存实时输出打印信息到日志文件如果不加-u则会导致日志文件不会实时刷新代码中的print函数的信息
5. “test.py”表示python的源代码文件
6. “test.log”表示输出的日志文件
7. “>”表示将打印信息重定向到日志文件
8. “2>&1”表示将标准错误输出转变化标准输出可以将错误信息也输出到日志文件中0-> stdin, 1->stdout, 2->stderr

        输入好之后按回车输入exit命令退出终端关闭shell。【注意】不能直接退出终端

        查看后台运行程序及关闭

        有两个命令可以用jobs和ps,区别是jobs用于查看当前终端后台运行的任务换了终端就看不到了。而ps命令用于查看瞬间进程的动态可以看到别的终端运行的后台进程。

        jobs命令只看当前终端生效的关闭终端后在另一个终端jobs已经无法看到后台跑得程序了。也就是说如果你的网或者你关闭链接时当你再次进入时用jobs -l看不到之前运行的程序运行进程。


其他问题整理 

1.解决SSH登陆缓慢问题

        1编辑/etc/ssh/sshd_config配置文件将UseDNS修改为no最好是在尾部添加一行为UseDNS no

        2关闭GSSAPI认证GSSAPIAuthentication no修改完成后记得重启ssh服务。

[root@Jenkins ~]# vim /etc/ssh/sshd_config
...
79 GSSAPIAuthentication yes
...
115 #UseDNS yes
...

 2.解决SSH无法登陆问题

         一般情况下当ssh服务远程连接不上时后台登陆服务器先确认服务器网络有无问题查一下ssh服务有没有正常运行防火墙是否放行了ssh端口检查sshd_config文件配置注意端口号、是否有地址绑定、是否允许root登陆等

        如果都没问题再检查下/etc/hosts.deny 和 /etc/hosts.allow两个配置文件是否有限制登陆。

        /etc/hosts.allow/etc/hosts.deny两个配置文件

        有时候服务器上会用这两个文件限制登陆的IP通常是在/etc/hosts.deny文件中里面先deny all然后在/etc/hosts.allow文件中添加需要登陆的IP地址例如

        先禁止所有

[root@Jenkins ~]# cat /etc/hosts.deny

sshd: ALL : deny 

        再放行允许连接访问的IP地址: 

[root@Jenkins ~]# cat  /etc/hosts.allow

sshd:10.10.10.* : allow      允许10.10.10.0/24网段登陆

sshd: 192.168.1.30 : allow   允许192.168.1.30这个ip登陆

到这就已经解决了问题。欢迎关注蓝胖胖咱们一起变强大!!!~~~

参考文章

https://blog.csdn.net/qq_44895681/article/details/124841145

https://blog.csdn.net/qq_41895003/article/details/105261596

https://blog.csdn.net/xiaoliyi185/article/details/90704812

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6