如何开启进程守护
更新时间:2025-01-03 11:21:10
用户通过 SSH 登录或以 SSH 为基础的工具软件(比如 XShell、PyCharm,VSCode 等)进行远程执行程序时,为避免因 SSH 连接中断导致程序终止,遭受不必要的损失,智算平台建议开守护进程来执行程序。
用户可通过以下方式开启进程守护。
Jupyterlab
用户可直接使用 jupyter 终端访问容器实例后台,执行相应进程即可。在 JupyterLab 的工作区域,点击 Other > Terminal 即可新打开一个终端。JupyterLab 在关闭终端后,默认不会终止运行。
-
若打开终端时,无内容显示,点击回车键即可。
-
使用 JupyterLab 长时间跑代码时,强烈建议对日志进行重定向,防止断网后中间的日志无法找回,具体操作如下。
日志重定向到 train.log 文件,需在命令后加上:
> train.log 2>&1
,如下:python xxx.py > train.log 2>&1
实时查看日志
tail -f train.log
screen
安装 screen
-
执行如下命令,安装 screen。
apt-get update && apt-get install -y screen
创建会话
-
在后台终端执行如下命令,创建一个会话。
screen
回显示例:
-
再次回车,在新的终端页面中,执行相应程序即可。相应的程序将会被上一步创建的会话保护。
-
若使用 screen 打开终端后出现中文乱码,可执行如下命令,重新进入。
echo "defencoding GBK" >> ~/.screenrc echo "encoding UTF-8 GBK" >> ~/.screenrc
离开会话
直接使用快捷键 ctrl+a+d
,系统会自动退出原终端,并提示 detached,表示离开当前会话。
重新进入会话
-
执行如下命令,找到离开的所有会话。
screen -ls
-
执行如下命令,恢复至指定会话。
screen -r <Screen_ID>
命令示例:
screen -r 1655.pts-0.nb-e8qmrhmigmio-0
退出会话
直接使用快捷键 ctrl+d
即可。若有正在执行的程序,可先使用快捷键 ctrl+c
终止程序。