在Linux把一个python程序当做自定义服务运行

把一个python程序当做自定义服务运行后就可以实现开机自启,重启,查看状态等功能。

首先需要写一个如下的myschedul.service文件放在/usr/lib/systemd/system下,myschedul是自己起的名字,下面文件中Description是自己写的描述文件,WantedBy=multi-user.target代表哪个用户都可以用,ExecStart里的/usr/bin/python3.6代表用python执行,是自己系统python的软连接地址,根据自己的系统配置,后面的是执行文件的地址,就是想要作为服务运行的python程序,注意路径都要写绝对路径。

[Unit]
Description=Spider Schedul Service
After=multi-user.target

[Service]
Type=idle
ExecStart=/usr/bin/python3.6 /root/test_wjx/SpiderSchedul/bin/myschedul_linux.py

[Install]
WantedBy=multi-user.target

写好之后运行

sudo systemctl enable myschedul.service

使自己的服务生效
然后输入

sudo systemctl start myschedul.service

自己的服务应该就启动起来了
如果没启动起来,可以输入

sudo systemctl status myschedul.service

里面可以看到一些报错信息。

注意作为服务的程序跑起来的时候,程序当前路径会自动定义为linux系统的根目录打印os.getcwd()的话,你会发现结构是/,这样的话,你程序里的import就会失效,需sys.path.append(os.path.dirname(file))里面是你觉得合适的环境变量。

一些服务相关命令:
开始自己的服务:
sudo systemctl start myschedul.service
查看自己的服务状态:
sudo systemctl status myschedul.service
重新加载服务的配置文件:
sudo systemctl daemon-reload
停止自己的服务:
sudo systemctl stop myschedul.service
重启自己的服务:
sudo systemctl restart myschedul.service

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值