当前位置:主页 > python教程 > linux开机自启动python程序的实例内容

linux开机自启动python程序代码方法

发布:2019-07-03 16:23:38 131


本站精选了一篇相关的编程文章,网友步甫文根据主题投稿了本篇教程内容,涉及到linux、开机自启动、python程序、代码、方法、linux开机自启动python程序的实例内容相关内容,已被238网友关注,相关难点技巧可以阅读下方的电子资料。

linux开机自启动python程序的实例内容

Linux下开机启动python脚本详解

应用场景:

最近在服务器上部署一些脚本,需要让其随服务器开机启动,于是研究了一下,begin . . .

解决方法:

1. 先准备好需要开机启动的脚本 /root/test/qin.py

2. 一定root权限编辑文件/etc/rc.local,在exit 0之前编辑开机启动脚本的命令

/usr/local/bin/python3 /root/test/qin.py > /root/test/qin.log
exit 0

3. 需要检查前面的python3执行环境是否有问题,这里解释一下,/usr/local/bin/python3  和 /usr/bin/python3都可以,有时/usr/bin/python3可能不存在,可以用软连接ln -s /usr/local/bin/python3  /usr/bin/python3,然后就可以了

4. 最后直接reboot重启后,发现log生成

尝试结果:

通过Linux命令查看当今程序是否持续执行

ps -aux|grep 'qin.py'

linux开机执行python脚本

一、利用init

1、系统有相应的python解释器,并在脚本头部声明,例如:#!/usr/bin/python
2、给予该脚本可执行权限,如:chmod +x somescript.py
3、脚本接受第一个命令参数,需要能接受至少包含start的参数,至于stop、restart以及status等并不是必须的,你可以自己来扩展。如: ./somescript.py start 这种命令格式来启动程序
4、将该脚本放到/etc/rc.d/init.d/路径下
5、chkconfig --add somescript.py添加服务
6、chkconfig --level 3 somescript.py on   在init为3或5的级别上开机启动该服务

在运行chkconfig时,程序会报错,需要在文件中加入:

 #chkconfig:- 85 15
 #description:xxxx is a service

建议将init级别设置为3,因为设置为5时,会运行两次脚本。

后期发现,级别3也存在同样的问题。

二、利用systemd

编写device.service脚本

[Unit]
Description=xxxx
After=network.service
​
[Service]
Type=simple
User=root
Group=root
WorkingDiretory=/var/www/html/app10 ExecStart=/usr/bin/python app.py
​
[Install]
WantedBy=multi-user.target

将该脚本复制到/etc/systemd/system/,将app.py脚本赋予执行权限:

 chmod +x app.py

启动服务:

systemctl start app.service

查看服务状态:

systemctl status app.service

停止服务:

systemctl stop app.service

 


参考资料

相关文章

  • Linux下rpm方式安装mysql教程

    发布:2022-11-03

    给网友们整理关于Linux的教程,这篇文章主要为大家详细介绍了Linux下rpm方式安装mysql教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下


  • Mysql5.7.14 linux版密码忘记的找回方法

    发布:2020-02-13

    这篇文章主要介绍了Mysql5.7.14 linux版密码忘记完美解决办法,需要的朋友可以参考下


  • Linux中使用C语言的fork()函数创建子进程的实例教程

    Linux中使用C语言的fork()函数创建子进程的实例教程

    发布:2022-07-25

    给大家整理了关于C语言的教程,fork是一个在Linux系统环境下专有的函数,现有的进程调用fork后将会创建一个新的进程,这里我们就来看一下Linux中使用C语言的fork()函数创建子进程的实例教程


  • 将python程序打包成DLL的三种方式

    发布:2023-04-06

    这篇文章主要介绍了将python程序打包成DLL的三种方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教


  • SUSE Linux下通过RPM方式卸载MySQL 5过程笔记

    发布:2022-07-04

    给网友们整理关于Linux的教程,这篇文章主要介绍了SUSE Linux下通过RPM方式卸载MySQL 5过程笔记,本文针对使用rpm方式安装的mysql,需要的朋友可以参考下


  • 《Python Linux系统管理与自动化运维》Ansible详解(一)

    发布:2018-12-01

    这是一篇关于《Python Linux系统管理与自动化运维》学习后的关于Ansible知识点的详解内容,主要介绍了Ansible维护模式通常由控制机和被管理机组成。有兴趣的朋友们可以参考下。


  • Linux下MySQL 5.5/5.6的修改字符集编码为UTF8的方法

    发布:2021-05-10

    下面小编就为大家带来一篇Linux下MySQL 5.5/5.6的修改字符集编码为UTF8的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧


  • linux平台使用Python制作BT种子并获取BT种子信息的方法

    发布:2023-01-18

    这篇文章主要介绍了linux平台使用Python制作BT种子并获取BT种子信息的方法,结合实例形式详细分析了Python BT模块的安装及针对BT种子文件的相关操作技巧,需要的朋友可以参考下


网友讨论