美文网首页
Linux创建守护进程

Linux创建守护进程

作者: 梅西爱骑车 | 来源:发表于2023-12-26 15:10 被阅读0次

如果你通过ssh登录或以ssh为基础的工具软件(比如XShell、PyCharm,VSCode等,可以用这类工具调试,但是最终长时间运行时请以守护进程的方式执行命令)进行远程执行程序时,那么请注意开守护进程来执行程序,避免因为SSH连接中断导致程序终止,遭受不必要的损失。

一、通过守护进程执行你的程序有多种方式

  1. screen,此外还有常用的tmux(如需安装执行:apt-get update && apt-get install -y tmux)工具,这里不做介绍
  2. jupyterlab的终端
  3. 如果你使用的是Notebook,Notebook断网后日志更新问题请参考JupyterLab文档最下方

1.1 Jupyterlab

最简单的方式是通过jupyterlab的终端来执行,只要jupyterlab不出现重启(几乎不会),jupyterlab的终端就会一直运行,无论是本地主机断网还是关机。



如果你关闭了这个终端tab,可以在左侧栏中找回


打开时如果终端什么也不显示,按回车键即可。在使用JupyterLab长时间跑代码的过程中强烈建议对日志重定向,防止断网后中间的日志没有了。使用方法:

# 日志重定向到train.log文件。即在你的命令后加上:> train.log 2>&1
python xxx.py > train.log 2>&1
# 实时查看日志
tail -f train.log

1.2 screen

安装screen在终端中执行:apt-get update && apt-get install -y screen

使用方法:

1.2.1 创建一个新的会话

终端中执行screen命令,然后在出来的界面按回车键,此时会出现一个和之前完全一样的终端(实际上是两个)。

此时在这个终端中执行的程序意味着会受到这个会话保护,比如在这里执行命令:

如果使用screen打开终端后中文乱码,执行以下命令后重新进入screen终端:

echo "defencoding GBK" >>  ~/.screenrc
echo "encoding UTF-8 GBK" >>  ~/.screenrc

1.2.2 离开会话

在用screen打开的终端中使用快捷键:ctl + a + d,会退出到原终端,并且显示detached,意味着这个会话只是离开并未退出。

1.2.3 重进入会话

先找到所有离开的会话:

screen -ls

然后恢复到对应的会话:

# 如何回到<name>窗口
screen -r <name>

执行完以上命令,我们会发现最开始执行的ping www.baidu.com仍然在执行。因此就可以将我们的程序放在screen的会话中执行,然后离开会话,等我们需要看日志时再恢复到这个会话中。

1.2.4 退回会话

在用screen打开的终端中使用快捷键:ctl + d。如果有正在执行的程序,先ctrl + c终止程序

screen乱码问题

加上-U参数即可,比如

新建:screen -U
恢复:screen -U -r xxx`</pre>

相关文章

  • linux进程

    linux进程包含如下几个方面:1:进程的控制(创建,等待子进程终止,执行程序,退出)2:守护进程(什么是守护进程...

  • Linux 创建守护进程

    一 :背景 二 :创建启动脚本 三 : 创建守护进程 ./kafka-protected.sh start 执行下...

  • PHP创建守护进程

    PHP 创建守护进程 执行守护进程

  • linux c创建守护进程

    1.源码实现 2.编译源码 3.运行及其结果

  • 进程

    创建子进程 循环创建N个子进程 回收子进程 守护进程

  • python下编写守护进程

    **1、编写守护进程的步骤 **创建守护进程其实和c创建守护进程的方式大同小异了,其实就是那么几个步骤: 创建子进...

  • rsync服务企业应用

    守护进程服务企业应用: 守护进程多模块功能配置 守护进程的排除功能实践 守护进程来创建备份目录 守护进程的访问控制...

  • 进程守护进程

    什么是守护进程?Linux 的大多数服务器就是用守护进程实现的,使用ps -axj可以查看守护进程: 守护进程基本...

  • 孤儿进程、僵尸进程和守护进程

    [TOC] 参考资料 Linux 之守护进程、僵死进程与孤儿进程【概述】-Linux内核三驾马车之-进程管理【Li...

  • 进程守护和非守护概念

    进程分为两种: 1、守护进程2、非守护进程 一个软件程序启动之后,可以根据需要创建很多个进程。比如创建了5个进程,...

网友评论

      本文标题:Linux创建守护进程

      本文链接:https://www.haomeiwen.com/subject/smplndtx.html