您的位置:首页 >CentOS Python安装后如何启动服务
发布于2026-05-01 阅读(0)
扫一扫,手机访问
在CentOS系统上安装好Python环境后,很多开发者会面临一个实际需求:如何让写好的Python脚本像系统服务一样,在后台稳定运行,并且能随系统开机自启?其实,借助systemd这个现代Linux系统的服务管理器,实现这个目标并不复杂。下面,我们就来一步步拆解这个过程。

整个过程的核心,在于创建一个正确的systemd服务文件。打开终端,使用你熟悉的文本编辑器(比如nano或vi)在指定目录下创建这个文件。例如,使用nano创建一个名为my_python_service.service的文件:
sudo nano /etc/systemd/system/my_python_service.service
接下来,将以下配置内容填入文件中。这里面的每一项设置都关乎服务的运行方式,需要仔细核对:
[Unit]
Description=My Python Service
After=network.target
[Service]
Type=simple
User=
Group=
ExecStart=/usr/bin/python3 /path/to/your/script.py
Restart=on-failure
[Install]
WantedBy=multi-user.target
有几个关键点需要你根据实际情况替换:将和换成运行此服务的系统用户名和组名;将/path/to/your/script.py替换成你的Python脚本的绝对路径。这一步的准确性直接决定了服务能否成功启动。
保存并关闭服务文件后,systemd并不会立刻知道它的存在。你需要运行以下命令,通知systemd重新加载其配置,这样它才能发现我们刚刚创建的新服务:
sudo systemctl daemon-reload
配置加载完毕,现在就可以启动服务了。使用下面的命令,你的脚本就会开始以后台服务的形式运行:
sudo systemctl start my_python_service.service
启动命令执行后,怎么知道服务真的跑起来了呢?运行状态检查命令是最直接的方式:
sudo systemctl status my_python_service.service
如果一切顺利,你会在输出信息中看到Active: active (running)的字样,这标志着服务正在健康运行。这个命令也是日后排查服务问题最常用的工具。
对于需要长期运行的服务,手动启动显然不够方便。通过一个简单的启用命令,就可以让服务在每次服务器重启后自动运行:
sudo systemctl enable my_python_service.service
有启动,自然就有停止。当需要暂停或更新服务时,使用停止命令即可:
sudo systemctl stop my_python_service.service
在配置过程中,有两点需要特别注意。首先是运行权限问题:虽然你可以将服务配置中的User和Group字段设为root来以最高权限运行脚本,但基于安全最小化原则,通常更推荐使用一个普通的非root用户来运行,这能有效降低潜在的安全风险。
其次,确保你的Python脚本本身做好了准备:一是给它加上可执行权限;二是在脚本的第一行(shebang行)明确指定解释器路径,例如#!/usr/bin/env python3。这能帮助系统准确无误地调用正确的Python环境来执行你的代码。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
9