linux开机执行python脚本

一、利用init1、系统有相应的python解释器,并在脚本头部声明,例如:#!/usr/bin/python2、给予该脚本可执行权限,如:chmod +x somescript.py3、脚本接受第一个命令参数,需要能接受至少包含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时,程序会报错,需要在文件中加入:

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

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

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

二、利用systemd

编写device.service脚本



 1 [Unit]
 2 Description=xxxx
 3 After=network.service
 4 ?
 5 [Service]
 6 Type=simple
 7 User=root
 8 Group=root
 9 WorkingDiretory=/var/www/html/app10 ExecStart=/usr/bin/python app.py
11 ?
12 [Install]
13 WantedBy=multi-user.target

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

1 chmod +x app.py

启动服务:



1 systemctl start app.service

查看服务状态:



1 systemctl status app.service

停止服务:



1 systemctl stop app.service

大功告成!!!

现在Linux平台大都提供systemd,个人推荐使用systemd。systemd教程请移步阮一峰的教程

时间: 2024-10-12 01:29:20

linux开机执行python脚本的相关文章

linux定时任务执行python脚本

企业微信应用--值日生,每周一三五发消息给同学打扫卫生.脚本利用linux的定时任务crontab来执行,每天跑一遍. 1.开启crontab日志. crontab默认不开启日志,所以先开启定时任务的日志来查看 修改rsyslog服务,将 /etc/rsyslog.d/50-default.conf  文件中的 #cron.* 前的 # 删掉:用service rsyslog restart重启rsyslog服务: 2.写定时任务 crontab -e 开启本用户的定时任务,即创建以本用户名为文

Linux定时循环执行python脚本

本文主要介绍在linux环境下,定时循环执行python脚本的两种方法. 方法一: nohup vim time.py 1 import time 2 while(True): 3 #time.sleep(1) 4 with open('time.log', 'a+') as logfile: 5 logfile.write('Hello, World!\n') 6 time.sleep(1) 7 #break 在终端运行如下命令 nohup python time.py & 功能:实现了每秒将

关于 Linux 下后台执行 Python 脚本的缓冲问题

[问题简述] 在 Linux 下后台执行 Python 脚本,重定向到日志文件,日志文件迟迟没有内容. [方案一](测试有效) nohup python3 -u t.py &> log.log & [方案一](测试无效) 方案二来自 stackoverflow,虽然测试无效,但其他地方也许会用到,记录一下. stdbuf -oL nohup python3 t.py &> log.log & *** walker *** 原文地址:http://blog.51c

如何在linux中执行一个脚本

---恢复内容开始--- 如何在LINUX中在系统启动时自动执行一个执行脚本 如果是开机马上执行的脚本,可以将脚本写到rc.local中: 如果是用户登录后自动执行脚本,可以将脚本写到相应的用户目录下"-/.bash_profile",若脚本"-/.bash_profile"不存在,可以直接拷贝"/etc/profile"命名为"-/.bash_profile": 如果是要任一用户登录后自动执行脚本,可以将脚本写到"

mac上使用crontab周期性执行python脚本

这个月买了本书<Linux系统命令及Shell脚本实践指南>, 看到了一个周期性执行任务cron.顿时产生一个想法: mac上有这种机制么? 加上自己也在15年下半年也学了点python脚本,哈哈,顿时就产生了这个想法“mac上使用crontab周期性执行python脚本”,不得不说 网络是给力的,居然还真有,顿时感觉学海无涯哇. 1. crontab -e 来编辑自定义自己的任务 关于如何定义自己的任务,我们可以参考here 2. 对python脚本进行编辑: 3. 效果就是,如下: 恩,基

crontab常见错误(执行python脚本 no module)

在crontab定时执行python脚本,在shell下没有问题,在crontab中报no module,找不到安装的库. 1 crond服务未启动 crontab不是Linux内核的功能,而是依赖一个crond服务,这个服务可以启动当然也可以停止.如果停止了就无法执行任何定时任务了,解决的方法是打开它: crond 或 service crond start 如果提示crond命令不存在,可能被误删除了,CentOS下可以通过这个命令重新安装: yum -y install crontabs

[Python]linux自己定义Python脚本命令

在window下写好的程序配置到Linux上,要实现随意文件夹下的命令调用. 因为初学Linux,这里从文件传输等最主要的方法入手,记录配置的过程中遇到的各种问题. 连接远端server 这里使用putty这个工具,用SSH方法连上远端server 传输文件 使用FTP传输,这里用filezilla作为本地server,图形化界面,方便快捷 安装文件中引用的python包 wget url 命令联网下载安装包 wget http:/www.^&*&%%& 解压缩(详细可见blog:

inotify+rsync实现实时同步(附解决crontab中无法执行python脚本的问题)

1.准备环境 # 系统支持的话,下面的目录就会存在 ls /proc/sys/fs/inotify/ rpm -qa inotify-tools yum -y install inotify-tools 2.inotifywait监控目录状态变化 /usr/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f' -e delete,create,close_write /data # 可以把时间去掉 /usr/bin/

Linux中执行shell脚本的4种方法

这篇文章主要介绍了Linux中执行shell脚本的4种方法总结,即在Linux中运行shell脚本的4种方法,需要的朋友可以参考下. bash shell 脚本的方法有多种,现在作个小结.假设我们编写好的shell脚本的文件名为hello.sh,文件位置在/root/bin目录中并已有执行权限(添加权限的方法:chmod +x hello.sh). 方法一:切换到shell脚本所在的目录(此时,称为工作目录)执行shell脚本: ./ 的意思是说在当前的工作目录下执行hello.sh.如果不加上