ubuntu执行python脚本_在启动时运行python脚本作为守护进程(Ubuntu)
除了gg.kaspersky方法,您还可以将脚本转换为“服务”,以便您可以使用以下命令启动或停止它:
$sudo service myserver start
* Starting system myserver.py Daemon [ OK ]
$sudo service myserver status
* /path/to/myserver.py is running
$sudo service myserver stop
* Stopping system myserver.py Daemon [ OK ]
并将其定义为启动服务,方法如下:
$sudo update-rc.d myserver defaults
为此,您必须创建此文件并将其保存在/etc/init.d/中.
#!/bin/sh -e
DAEMON="/path/to/myserver.py"
DAEMONUSER="myuser"
DAEMON_NAME="myserver.py"
PATH="/sbin:/bin:/usr/sbin:/usr/bin"
test -x $DAEMON || exit 0
. /lib/lsb/init-functions
d_start () {
log_daemon_msg "Starting system $DAEMON_NAME Daemon"
start-stop-daemon --background --name $DAEMON_NAME --start --user $DAEMONUSER --exec $DAEMON
log_end_msg $?
}
d_stop () {
log_daemon_msg "Stopping system $DAEMON_NAME Daemon"
start-stop-daemon --name $DAEMON_NAME --stop --retry 5 --name $DAEMON_NAME
log_end_msg $?
}
case "$1" in
start|stop)
d_${1}
;;
restart|reload|force-reload)
d_stop
d_start
;;
force-stop)
d_stop
killall -q $DAEMON_NAME || true
sleep 2
killall -q -9 $DAEMON_NAME || true
;;
status)
status_of_proc "$DAEMON_NAME" "$DAEMON" "system-wide $DAEMON_NAME" && exit 0 || exit $?
;;
*)
echo "Usage: /etc/init.d/$DAEMON_NAME {start|stop|force-stop|restart|reload|force-reload|status}"
exit 1
;;
esac
exit 0
在这个例子中,我假设你的python文件的头部有一个像#!/usr/bin/python这样的剪贴板,可以直接执行.
最后但并非最不重要的是,不要忘记给你的python服务器和服务脚本赋予执行权限:
$sudo chmod 755 /etc/init.d/myserver
$sudo chmod 755 /path/to/mserver.py
这里是我原来学习的page(法语).
干杯.
ubuntu执行python脚本_在启动时运行python脚本作为守护进程(Ubuntu)相关推荐
- Docker容器启动时运行 sh 脚本
1.docker开机运行 对于Ubuntu18.04以上的系统,如果是使用命令sudo apt-get install -y docker.io安装的docker,都可以使用下列命令设置开机启动doc ...
- 树莓派能直接运行python程序_在树莓派上运行python脚本 - python
我正在研究rapiberry pi 3大约3个月,开始使用它时遇到了问题. 我找不到在树莓派打开时在其上运行python脚本的有效,安全的方法(没有监视器,鼠标和键盘).此刻,我在/ etc / pr ...
- 在vim中写python程序_在Vim中运行Python代码
在Vim中运行Python代码 我正在使用Vim编写Python代码,每次我想运行我的代码时,我都会在Vim中输入: :w !python 这令人沮丧,所以我一直在寻找一种更快的方法来在Vim中运行P ...
- sublime运行python代码_怎么用sublime运行python
首先需要安装一个Sublime Text(http://www.sublimetext.com/)和一个Python(https://www.python.org/downloads/) 接下来打开S ...
- anaconda怎么运行python程序_怎么用cmd运行python
怎么用cmd运行python? 用cmd运行python程序 步骤:(1)打开cmd. (2)转到你要运行的文件所在的盘(例如:E盘).输入: e: 回车 (3)打开你要运行的文件所在的文件夹(例如: ...
- 用cmd运行python文件_怎么用cmd运行python文件
Layout Go工程项目的整体组织 首先我们看一下整个 Go 工程是怎么组织起来的. 很多同事都在用 GitLab 的,GitLab 的一个 group 里面可以创建很多 project.如果我们进 ...
- 电脑重启后python导入的库不见_为什么python不会在启动时自动导入每个模块?
我正在玩Python 2.7,每个人都知道,在每个程序的开头,你总是需要导入模块.例如:import random import time for x in range(1, 300): print ...
- bat脚本中获取上级目录_使用Python写一个可以监控Tomcat 运行的脚本,并且把.py文件转换成.exe文件...
使用Python写一个可以监控Tomcat 运行的脚本,并且把.py文件转换成.exe文件 文章来源与博主本人的CSDN博客,博客地址:https://blog.csdn.net/weixin_435 ...
- python安装运行时提示不是内部或外部命令怎么办_如何解决cmd运行python提示不是内部命令...
python安装完成后,直接运行python.exe能够正常执行python程序.但是进入到cmd命令窗口(同时按下win+r组合键后输入cmd进入),输入python命令提示"不是内部或外 ...
最新文章
- 深度学习多变量时间序列预测:Bi-LSTM算法构建时间序列多变量模型预测交通流量+代码实战
- python转行it好学吗-想转行学python过来人提醒大家几点
- 云炬随笔20211012(3)
- JS与OC中的方法相互调用
- Boost:是否对齐的测试程序
- kafka 重新分配节点_Kafka控制器-分区重分配
- 计算机网络——速率相关的性能指标
- 常见的注册界面实现的效果
- python绘制矩形图_Python。在底图中绘制矩形
- 前端框架之Vue(1)-第一个Vue实例
- Autoware docker 环境安装
- Python实现微信自动抠图换底助手
- WF 与 WCF 集成
- html外链怎么做,外链铺广之路如何走?外链实操战术整理
- php中可以给class添加click,jQuery addClass()方法添加class
- C++程序的存储空间布局
- Android直播开发之旅(25):使用AES算法加密多媒体文件(+RSA+MD5+Base64)
- lc[栈与队列]---232.用栈实现队列
- 音乐、游戏、教育,谁是字节跳动的下一个“抖音”?
- 红旗Linux桌面操作系统V11社区预览版系统安装
热门文章
- eclipse 输入提示插件_【STM32】搭建基于Eclipse平台的STM32调试环境
- php算法求出一个数可以被分解成多少个_程序员的算法趣题
- 通过phpmyadmin确认此版本的php支持mssql函数,Php5.6.4+IIS8.5+mysql5.6.22+phpmyadmin4.3.6的配置...
- 新增磁盘,创建分区,分区挂载
- MIT 2018 自动驾驶课程
- burpsuite_pro的使用
- IE6/7 单选按钮 radio 无法选中解决方法
- 二叉树中节点的最大的距离(编程之美3.8)
- Equals Finalize GetHashCode GetType MemberwiseClone ReferenceEquals ToString String.IsInterned
- Android 音频tinyalsa开发