关键词

python脚本开机自启的实现方法

当我们需要让Python脚本在开机时自启动,可以使用以下两种方法实现:

方法一:使用init.d服务

  1. 创建一个service文件

首先需要创建一个service文件,其中包含运行脚本的命令及其他相关信息,如下:

#!/bin/bash
### BEGIN INIT INFO
# Provides:          my_python_script
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: My Python Script
# Description:       My Python Script
### END INIT INFO
cd /path/to/script/
exec python my_script.py
  1. 复制脚本文件并修改权限

将上面创建的service文件保存为“my_python_script”,并复制到/etc/init.d/目录中,然后使用如下命令修改文件权限:

sudo chmod +x /etc/init.d/my_python_script
  1. 注册服务并设置开机启动

使用如下命令注册服务,并设置为开机启动:

sudo update-rc.d my_python_script defaults

此时,Python脚本会在开机时自启动。如果需要关闭脚本,可以使用如下命令:

sudo service my_python_script stop

方法二:使用crontab

  1. 编辑crontab文件

使用如下命令编辑crontab文件:

crontab -e
  1. 添加开机自启命令

在文件末尾添加如下命令:

@reboot /usr/bin/python /path/to/script/my_script.py >> /var/log/cron.log 2>&1

其中,/var/log/cron.log是日志文件路径,用于记录Python脚本的运行情况。

  1. 保存并退出

保存文件并退出编辑器。

此时,Python脚本会在开机时自启动,并将运行情况记录到指定的日志文件中。

示例1:使用init.d服务实现

假设需要让位于/home/user/project/路径下的Python脚本“my_script.py”在开机时自启动,可以按照以下步骤实现:

  1. 创建service文件
sudo nano /etc/init.d/my_python_script

输入以下代码:

#!/bin/bash
### BEGIN INIT INFO
# Provides:          my_python_script
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: My Python Script
# Description:       My Python Script
### END INIT INFO
cd /home/user/project/
exec python my_script.py
  1. 修改文件权限
sudo chmod +x /etc/init.d/my_python_script
  1. 注册服务并设置开机启动
sudo update-rc.d my_python_script defaults

这样,在Linux系统开机时,Python脚本“my_script.py”会自动运行。

示例2:使用crontab实现

假设需要让位于/home/user/project/路径下的Python脚本“my_script.py”在开机时自启动并记录运行情况到日志文件“/var/log/my_script.log”,可以按照以下步骤实现:

  1. 编辑crontab文件
crontab -e
  1. 添加开机自启命令

在文件末尾添加如下命令:

@reboot /usr/bin/python /home/user/project/my_script.py >> /var/log/my_script.log 2>&1
  1. 保存并退出

保存文件并退出编辑器。

这样,在Linux系统开机时,Python脚本“my_script.py”会自动运行,并将运行情况记录到日志文件“/var/log/my_script.log”中。

本文链接:http://task.lmcjl.com/news/15206.html

展开阅读全文