编辑
2024-06-03
学习记录
0
请注意,本文编写于 372 天前,最后修改于 372 天前,其中某些信息可能已经过时。

目录

使用systemctl实现开机自启动Python程序
1.概念

使用systemctl实现开机自启动Python程序

1.概念

systemctl是一个管理系统服务的命令行工具,用于控制systemd系统和服务管理器。它可以启动、停止、重启、重新加载和查询系统服务的状态。以下是一些常用的systemctl命令及其作用:

  1. 启动一个服务:systemctl start servicename
  2. 停止一个服务:systemctl stop servicename
  3. 重启一个服务:systemctl restart servicename
  4. 重新加载一个服务的配置:systemctl reload servicename
  5. 查看一个服务的状态:systemctl status servicename
  6. 显示一个服务的所有信息:systemctl show servicename
  7. 启用一个服务,使其在系统启动时自动启动:systemctl enable servicename
  8. 禁用一个服务,使其在系统启动时不自动启动:systemctl disable servicename

假设要运行的python程序为XXX.py,路径为/root/XXX.py。

打开终端并使用root权限创建一个名为/etc/systemd/system/XXX.service的文件,可以使用sudo命令:

sudo vim /etc/systemd/system/XXX.service

在打开的文件中输入以下内容,注意替换ExecStart中的路径为您的Python文件实际路径,并且User改为当前用户:

[Unit] Description=My XXX Python Script After=network.target [Service] User=root ExecStart=/usr/bin/python3 /root/XXX.py Restart=always RestartSec=1 [Install] WantedBy=multi-user.target

一旦修改配置文件,就要让 systemd 重新加载配置文件,然后重新启动,否则修改不会生效,例如:

sudo systemctl daemon-reload sudo systemctl restart httpd.service

本文作者:zzw

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 License 许可协议。转载请注明出处!