使用screen实现 关掉本地计算机 而远程服务器继续跑代码

使用screen实现 关掉本地计算机 而远程服务器继续跑代码

  • 为什么建议使用screen?
  • 首先使用ssh连接到远程服务器:
  • 创建一个新的screen:
  • 查看刚才创建的screen:
  • 切换路径:cd到服务器中你文件的存放位置:
  • activate 自己的环境:
  • 运行代码:
  • 重新打开screen:
  • 删除screen:

使用screen实现 关掉本地计算机 而远程服务器继续跑代码_第1张图片

为什么建议使用screen?

我这一周都在跑一个深度学习模型的代码,本地电脑一直处在工作状态。心痛我的电脑太劳累,浪费电,屏幕太亮影响睡眠。朋友说使用screen工具可以实现离线跑代码,也就是说我可以关掉我本地的电脑,而远程服务器还在帮我跑代码!简简单单几个步骤即可实现,赶快来围观吧~

首先使用ssh连接到远程服务器:

C:\Windows\system32>ssh -p 12345 [email protected]
[email protected]'s password:

创建一个新的screen:

(base) git@ecs-1a2b-12345678:~# screen -S test

查看刚才创建的screen:

(base) git@ecs-1a2b-12345678:~# screen -ls
There are screens on:
        14154.test      (03/29/2020 11:01:58 AM)        (Attached)
1 Sockets in /run/screen/S-git.

切换路径:cd到服务器中你文件的存放位置:

(base) git@ecs-1a2b-12345678:~# cd /home/folders/Fiona/program

activate 自己的环境:

(base) git@ecs-1a2b-12345678:/home/folders/Fiona/program# conda activate Fiona0329

运行代码:

(Fiona0329) git@ecs-1a2b-12345678:/home/folders/Fiona/program# python run.py

完成以上步骤,使用ctrl+a+d退出screen,然后再×掉cmd窗口了可以关机出去玩耍啦,代码还会继续在服务器中愉快地跑~

玩耍回来之后,想要看一下刚才的程序跑得怎么样了,这个时候重新打开cmd,使用ssh登录到远程服务器,使用screen -ls命令查看自己所有screen。
使用screen实现 关掉本地计算机 而远程服务器继续跑代码_第2张图片

Detached意思是当前screen没有被打开,相对的是Attached表示当前screen正处在打开状态。

重新打开screen:

(base) git@ecs-1a2b-12345678# screen -r 15659.test

这样就可以看到程序运行的状态了!
使用screen实现 关掉本地计算机 而远程服务器继续跑代码_第3张图片

删除screen:

删除之前:
使用screen实现 关掉本地计算机 而远程服务器继续跑代码_第4张图片
使用删除命令:

(base) git@ecs-1a2b-12345678# screen -X -S 16283.you quit

删除之后:
在这里插入图片描述
多谢阅读,觉得有用,转载+收藏吧!

你可能感兴趣的:(深度学习,pytorch,神经网络)