智星云文档
  • 新手入门

    • 算力租用流程
    • 常见问题
    • 如何选择GPU
  • 技术相关

    • turbovnc安装配置
    • 智星云huggingface加速节点使用教程
    • AI模型库:服务器预载,极速下载
    • linux安装cuda和pytorch方法
    • 测试服务器带宽的方法
    • windows常见问题
    • GPU测速
    • Linux实用基础
    • jupyter notebook连接linux
    • VSCode连接到云主机
    • macOS系统连接到云主机
    • 拓展磁盘
    • 端口映射
    • GPU无法调用
    • ssh链接保持
    • ssh在云主机后台运行
    • 基于SSH的链接异常
    • VSCode远程连接失败
    • centos7-epel加速
    • conda使用源
    • docker镜像压缩
    • dynslam安装
    • huggingface下载
    • ubuntu安装显卡驱动
    • 编译tensorflow
    • linux上传文件&数据上传Windows
    • 更新git到最新
    • 回环设备
    • nvidia-smi输出解析
    • Topaz 视频处理教程

系统管理员经常需要SSH远程登录到Linux 服务器,经常运行一些需要很长时间才能完成的任务,比如训练模型、ftp等等。通常情况下我们都是为每一个这样的任务开一个远程终端窗口,因为它们执行的时间太长了。必须等待它们执行完毕,在此期间不能关掉窗口或者断开连接,否则这个任务就会被杀掉,一切半途而废了。

GNU Screen是一款由GNU计划开发的用于命令行终端切换的自由软件。用户可以通过该软件同时连接多个本地或远程的命令行会话,并在其间自由切换。

安装screen工具

ubuntu:
sudo apt install -y screen
 
centos:
sudo yum install -y screen

screen语法

screen [-AmRvx -ls -wipe][-d <作业名称>][-h <行数>][-r <作业名称>][-s < shell>][-S <作业名称>]
screen --help   #查看帮助

参数说明

-A 将所有的视窗都调整为目前终端机的大小。

-d<作业名称> 将指定的screen作业离线。

-h<行数> 指定视窗的缓冲区行数。

-m 即使目前已在作业中的screen作业,仍强制建立新的screen作业。

-r<作业名称> 恢复离线的screen作业。

-R 先试图恢复离线的作业。若找不到离线的作业,即建立新的screen作业。

-s < shell> 指定建立新视窗时,所要执行的shell。

-S<作业名称> 指定screen作业的名称。

-v 显示版本信息。

-x 恢复之前离线的screen作业。

-ls或–list 显示目前所有的screen作业。

-wipe 检查目前所有的screen作业,并删除已经无法使用的screen作业。

常用命令

screen -S name   #创建一个名为name的session
screen -r name   #进入名为name的session
screen -ls       #查看当前服务器当中所有的session
screen -d name   #detach掉name的session
screen -d -r name   #结束当前session并回到yourname这个session

智星云平台中使用

通过ssh登录到linux云平台上

在终端创建screen的test作业,自动进入这个session,screem -S test

图片

运行自己的命令,watch nvidia-smi

图片

按ctrl+A+D退出这个session,回到主终端可以进行其他的操作

通过screen -ls查看后台任务

图片

如果想回到之前的session查看运行结果,就使用screen -r 23280重新进入。

如果想销毁23280.teest的作业,使用screen -r 23280重新进入后,执行ctrl+d即可。

Prev
ssh链接保持
Next
基于SSH的链接异常