因为如果没有守护进程,当你退出ssh时候,会关闭你启动的程序。这个有个很简单的办法解决,用screen ,直接启动一个screen,在运行python脚本,你退出的时候,screen 会保证程序继续执行。
一、screen命令是什么?
Screen是一个可以在多个进程之间多路复用一个物理终端的全屏窗口管理器。Screen中有会话的概念,用户可以在一个screen会话中创建多个screen窗口,在每一个screen窗口中就像操作一个真实的telnet/SSH连接窗口那样。
二、如何安装screen命令?
除部分精简的系统或者定制的系统大部分都安装了screen命令,如果没有安装,CentOS系统可以执行:yum install screen ;
Debian/Ubuntu系统执行:apt-get install screen 。
三、screen命令使用方法?
1、常用的使用方法
用来解决文章开始我们遇到的问题。
1.1 创建screen会话
可以先执行:screen -S abc ,screen就会创建一个名字为abc的会话。
1.2 暂时离开,保留screen会话中的任务或程序
当需要临时离开时(会话中的程序不会关闭,仍在运行)可以用快捷键Ctrl+a d(即按住Ctrl,依次再按a,d)
1.3 恢复screen会话
当回来时可以再执行执行:screen -r abc 即可恢复到离开前创建的abc会话的工作界面。
1.4 关闭screen的会话
执行:exit ,会提示:[screen is terminating],表示已经成功退出screen会话。
1.5列出所有会话
screen -ls(或者screen -list) -> 列出当前所有的session
需要注意的是python脚本里面打开文件要使用绝对路径,不能使用相对路径