在pycharm通过SSH远程连接服务器时,如何避免断网或者关闭pycharm影响代码运行

因为实验室中我这个工位的网络有点连接不稳定,在跑实验的时候会出现程序中断的情况,而我在控制台终端还看不出来。

注:首先可以通过以下指令判断是否GPU在运行,从而判断程序是否已经中断。

nvidia-smi 

开始配置Ubuntu系统中的screen指令,用来避免上面程序中断的问题。

1、在成功连接到服务器并登陆后,在命令行中切换到自己的环境,如我的环境是anaconda创建的名为yzk的环境,则执行

conda activate yzk

2、安装screen(如果不知道有没有的话可以先进行第三步,看是否已经有了screen)

conda install screen

3、在激活环境和安装screen成功后,我们可以使用screen指令创建一个新窗口(需要给这个窗口起一个名字)。假设我给创建的窗口起的名字是TRAIN2024

screen -S TRAIN2024

执行这段指令后,屏幕应该会重新开启一个新的终端页面,此后,可以在这个页面中重新进入我们的环境,并且cd至指定目录后执行项目,例如执行train.py文件

python train.py

4、此后,服务器则开始跑这个程序,此时我们可以断开SSH(关闭这个终端界面),断开后,服务器会在本地继续跑这个程序

假如我们想恢复这个screen,看看程序跑没跑完,则只需要重新SSH连接到这个服务器,登陆同一个账号后,在终端输入:

screen -ls

然后会出现下面类似的结果:

There is a screen on:
        1423013.TRAIN2024       (Attached)
1 Socket in /tmp/uscreens/S-zikang.

5、此时,若我们想切到这个screen中,只需要执行下面的指令,就看到恢复后的界面了

screen -r 1423013

6、如果想杀掉这个screen终端可以执行

kill 1423013

另外,linux在进入screen模式下之后,发现是无法在终端使用鼠标滚轮进行上下翻页拉动的,无法查看上面的终端输出内容了

解决办法:
进入回滚模式(可以操作鼠标滚轮上下翻页):

先按Ctrl+a键,然后释放,然后再按[键即可进入翻页模式。

但是这个状态的时候,终端的输出内容会静止,不再现实真实的新输出值。我们可以切换回之前模式:

Ctrl+c

参考文献:

SSH远程连接服务器时,避免因断网导致程序终端执行,可使用screen指令_ssh 网络波动 会断开吗-CSDN博客

ssh连接服务器中断,如何让命令继续在服务器执行 | Darren

screen模式无法翻页,鼠标无法滚动问题_screen中鼠标滚轮不可用-CSDN博客

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值