一、系统环境

操作系统:ubuntu 18 (该版本已默认使用systemd作为init)

python版本:3.6

二、步骤

(一)准备python程序

1、在 /usr/bin/ 下新建python程序 svc-test.py

# nano /usr/bin/svc-test.py

#! /usr/bin/python3

import time

while True:

f = open('/tmp/svc-test.log', 'a', encoding='utf8')

now = time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time()))

f.write(now+'\n')

f.close()

time.sleep(2)

2、添加执行权限

# chmod +x /usr/bin/svc-test.py

(二)向系统注册服务

1、编写注册文件

在 /etc/systemd/system/ 下添加svc-test.service 文件

# nano /etc/systemd/system/svc-test.service

[Unit]

Description=svc-test

After=basic.service //启动顺序

[Service]

Type=oneshot

KillMode=control-group

WorkingDirectory=/tmp

ExecStart=/usr/bin/python3 /usr/bin/svc-test.py //必须使用绝对路径

[Install]

Alias=svc-test.service

WantedBy=multi-user.target

2、添加执行权限

# chmod + x /etc/systemd/system/svc-test.service

3、重载系统服务

# systemctl daemon-reload

4、将服务注册为开机启动

# systemctl enable svc-test.service

三、附录--一些关于systemctl的命令

查看所有服务的状态

# systemctl status

停止服务

# systemctl stop svc-test

手工启动服务

# systemctl start svc-test

查看单个服务的状态

# systemctl status svc-test

● svc-test.service - svc-test

Loaded: loaded (/etc/systemd/system/svc-test.service; enabled; vendor preset: enabled)

Active: activating (start) since Thu 2020-01-02 00:42:43 CST; 21min ago

Main PID: 574 (python3)

Tasks: 1 (limit: 4604)

CGroup: /system.slice/svc-test.service

└─574 /usr/bin/python3 /usr/bin/svc-test.py

Jan 02 00:42:43 NanoPi-M4 systemd[1]: Starting svc-test...

禁用开机启动

# systemctl disable svc-test.service

Removed /etc/systemd/system/multi-user.target.wants/svc-test.service.

python 服务注册_将python程序注册为Ubuntu系统服务,并开机启动的方法。相关推荐

  1. python 概率分布模型_使用python的概率模型进行公司估值

    python 概率分布模型 Note from Towards Data Science's editors: While we allow independent authors to publis ...

  2. python 时间序列预测_使用Python进行动手时间序列预测

    python 时间序列预测 Time series analysis is the endeavor of extracting meaningful summary and statistical ...

  3. CentOS设置服务开机启动的方法

    CentOS设置服务开机启动的方法 by 天涯 · 2013/07/26 CentOS设置服务开机启动的两种方法 1.利用 chkconfig 来配置启动级别 在CentOS或者RedHat其他系统下 ...

  4. VS代码-安装包应用程序因为并行配置不正确无法启动问题解决方法

    VS代码-安装包应用程序因为并行配置不正确无法启动问题解决方法 解决方法参照以下链接:http://www.cnblogs.com/wuhanhoutao/archive/2008/01/09/103 ...

  5. 移动端分步注册_移动应用程序的可用性测试:分步指南

    移动端分步注册 Written by Justin Mifsud 由贾斯汀·米夫苏德 ( Justin Mifsud)撰写 The mobile market is huge and growing ...

  6. python项目了解_神级程序员都是这样来开源 Python 项目!今天算是涨知识了!

    工具和概念 项目布局 当准备一个项目时,正确合理的布局(目录结构)是十分重要的.一个合理的布局意味着想参与开发者不必花时间来寻找某些代码的位置; 凭直觉就可以找到文件的位置.因为我们在处理一个项目,就 ...

  7. python培训班-Python培训机构_高品质Python线下开发培训班推荐-黑马程序员

    Python编程基础基础班1 课时:15天技术点:97项测验:2次学习方式:线下面授 学习目标 1.掌握Python开发环境基本配置|2.掌握运算符.表达式.流程控制语句.数组等的使用|3.掌握字符串 ...

  8. 微信公众号(服务号/订阅号/小程序)注册详细流程

    今天想注册一个微信公众号,个人订阅号,按照流程走下来发现好恶心,提示公众号主体已经达到上线,我一脸懵逼!!! 我什么时候注册过呢,然后一顿搜索解决,终于知道了,问题所在,一句话微信公众平台真的恶心到我 ...

  9. python卸载错误_卸载python后导致yum无法使用的解决办法 - Python - 服务器之家

    卸载python后导致yum无法使用的解决办法 发布时间:2014-08-03 来源:服务器之家 由于服务器需要升级python,参照了一篇坑爹的文章卸载了旧版python # 卸载旧的python ...

最新文章

  1. Delphi 2010 新增功能之: 软键盘、触摸键盘(TTouchKeyboard)
  2. jQuery(function(){...})与(function($){...})(jQuery)的“兄弟”情结
  3. Yii 之分页 + bootstrap
  4. SAP Spartacus Page Layout学习笔记
  5. GOOGLE不让我访问啦?
  6. 多线程 流水线 java_Java Lock锁多线程中实现流水线任务
  7. 内网穿透从搭建到溯源(内网隧道搭建、绕过、隧道流量分析、日志分析、隧道防护)
  8. Android关闭Activity
  9. ionic2/cordova自定义插件集成aar包
  10. pytorch中lr_scheduler的使用
  11. 简单易懂之python 中的map,filter,reduce用法
  12. 个人档案php源码,php人事档案管理系统
  13. 雷丁CAN通讯信号上位机软件
  14. PTA 7-55 剿灭魔教 (30分)(拓扑排序bfs版)
  15. Week15 实验 B - ZJM 的本领 CodeForces - 499A
  16. 啥?Grafana 还能为日志添加告警?
  17. oracle 视图、索引、序列、同义词
  18. 移动端h5页面打开高德地图或者百度地图实现导航
  19. Spark系列之Spark在不同集群中的架构
  20. 食品赛道崛起,舌尖美食走俏礼品市场

热门文章

  1. 数据结构开发(7):典型问题分析(Bugfix)
  2. Scapy之ARP询问
  3. Android中ExpandableListView控件基本使用
  4. 利用DBMS_ADVISOR.TUNE_MVIEW包生成物化视图创建语句
  5. 5种ASP.NET页面间传递参数实例代码
  6. 算法 --- 插入排序的JS实现
  7. JavaScript --- 取得鼠标事件的坐标
  8. Flask-admin 学习及一些笔记
  9. DOM-4 【utils/待讲评】节点创建删除、元素属性设置获取、节点属性
  10. 【教程】如何在标签打印工具TFORMer Designer中自定义布局?