热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

linux将脚本设为服务,Linux下设置python脚本文件为服务

(最简单的方式nohuppythonxxx.py)python-----------------------------------------------------------

(最简单的方式nohup python xxx.py)python

-------------------------------------------------------------------------------------------------------------------linux

Python脚本开机自动运行;本帖适用于使用systemd的Linux系统,如今流行的Linux发行版都使用systemd。vim

后台服务程序是随系统自启动的,咱们只要把Python脚本配置为服务就好了。须要注意的一点是你Python脚本的启动时机,它依赖不依赖其余服务(网络链接、一些分区的挂载等等)。sublime-text

#1 Python脚本

一个你要自启动的Python脚本,我使用 /home/snail/autorun.py为例。网络

#2 建立Unit配置文件

1

$sudo vim/lib/systemd/system/autorun.service

写入以下内容:tcp

1

2

3

4

5

6

7

8

9

10

[Unit]

Description=Test Service

After=multi-user.target

[Service]

Type=idle

ExecStart=/usr/bin/python/home/snail/autorun.py

[Install]

WantedBy=multi-user.target

上面定义了一个叫 Test Service 的服务,它在multi-user环境起来以后运行;ExecStart参数指定咱们要运行的程序;idle确保脚本在其余东西加载完成以后运行,它的默认值是simple。spa

注意使用绝对路径。.net

为了得到脚本的输出信息,咱们能够重定向到文件:rest

1

ExecStart=/usr/bin/python/home/snail/autorun.py>/home/snail/autorun.log2>&1

更改配置文件的权限:code

1

$sudo chmod644/lib/systemd/system/autorun.service

#3 使配置文件生效

1

2

$sudo systemctl daemon-reload

$sudo systemctl enable autorun.service

#4 重启

1

$sudo reboot

#5 查看服务状态

1

$sudo systemctl status autorun.service

0165e33960cf4e1990169a29.html

0165e33960cf4e1990169a29.html

#6 服务操做命令

systemctl命令是系统服务管理器指令,它实际上将

任务

旧指令

新指令

使某服务自动启动

chkconfig --level 3

systemctl enable httpd.service

使某服务不自动启动

chkconfig --level 3 httpd off

systemctl disable httpd.service

检查服务状态

service httpd status

systemctl status httpd.service (服务详细信息) systemctl is-active httpd.service (仅显示是否 Active)

显示全部已启动的服务

chkconfig --list

systemctl list-units --type=service

启动某服务

service httpd start

systemctl start httpd.service

中止某服务

service httpd stop

systemctl stop httpd.service

重启某服务

service httpd restart

systemctl restart httpd.service

实例

1.启动nfs服务

systemctl start nfs-server.service

2.设置开机自启动

systemctl enable nfs-server.service

3.中止开机自启动

systemctl disable nfs-server.service

4.查看服务当前状态

systemctl status nfs-server.service

5.从新启动某服务

systemctl restart nfs-server.service

6.查看全部已启动的服务

systemctl list -units --type=service

开启防火墙22端口

iptables -I INPUT -p tcp --dport 22 -j

若是仍然有问题,就多是SELinux致使的

关闭SElinux:

修改/etc/selinux/config文件中的SELINUX=””为disabled,而后重启。

完全关闭防火墙:

sudo systemctl status firewalld.service

sudo systemctl stop firewalld.service

sudo systemctl disable firewalld.service



推荐阅读
  • 在Ubuntu 18.04上使用Nginx搭建RTMP流媒体服务器
    本文详细介绍了如何在Ubuntu 18.04上使用Nginx和nginx-rtmp-module模块搭建RTMP流媒体服务器,包括环境搭建、配置文件修改和推流拉流操作。适用于需要搭建流媒体服务器的技术人员。 ... [详细]
  • 树莓派4B:安装基础操作系统指南
    本文将详细介绍如何为树莓派4B安装基础操作系统,包括所需材料、镜像下载、镜像烧录以及更换国内源等步骤。 ... [详细]
  • 本文详细介绍了Socket在Linux内核中的实现机制,包括基本的Socket结构、协议操作集以及不同协议下的具体实现。通过这些内容,读者可以更好地理解Socket的工作原理。 ... [详细]
  • 在CentOS 7中部署Nginx并配置SSL证书
    本文详细介绍了如何在CentOS 7操作系统上安装Nginx服务器,并配置SSL证书以增强网站的安全性。适合初学者和中级用户参考。 ... [详细]
  • ArcBlock 发布 ABT 节点 1.0.31 版本更新
    2020年11月9日,ArcBlock 区块链基础平台发布了 ABT 节点开发平台的1.0.31版本更新,此次更新带来了多项功能增强与性能优化。 ... [详细]
  • Maven + Spring + MyBatis + MySQL 环境搭建与实例解析
    本文详细介绍如何使用MySQL数据库进行环境搭建,包括创建数据库表并插入示例数据。随后,逐步指导如何配置Maven项目,整合Spring框架与MyBatis,实现高效的数据访问。 ... [详细]
  • 调试利器SSH隧道
    在开发微信公众号或小程序的时候,由于微信平台规则的限制,部分接口需要通过线上域名才能正常访问。但我们一般都会在本地开发,因为这能快速的看到 ... [详细]
  • Jupyter Notebook多语言环境搭建指南
    本文详细介绍了如何在Linux环境下为Jupyter Notebook配置Python、Python3、R及Go四种编程语言的环境,包括必要的软件安装和配置步骤。 ... [详细]
  • 本文探讨了一个Web工程项目的需求,即允许用户随时添加定时任务,并通过Quartz框架实现这些任务的自动化调度。文章将介绍如何设计任务表以存储任务信息和执行周期,以及如何通过一个定期扫描机制自动识别并加载新任务到调度系统中。 ... [详细]
  • 本文详细介绍了如何在PHP中使用Memcached进行数据缓存,包括服务器连接、数据操作、高级功能等。 ... [详细]
  • Docker安全策略与管理
    本文探讨了Docker的安全挑战、核心安全特性及其管理策略,旨在帮助读者深入理解Docker安全机制,并提供实用的安全管理建议。 ... [详细]
  • 本文详细介绍了如何搭建一个高可用的MongoDB集群,包括环境准备、用户配置、目录创建、MongoDB安装、配置文件设置、集群组件部署等步骤。特别关注分片、读写分离及负载均衡的实现。 ... [详细]
  • 在 Ubuntu 22.04 LTS 上部署 Jira 敏捷项目管理工具
    Jira 敏捷项目管理工具专为软件开发团队设计,旨在以高效、有序的方式管理项目、问题和任务。该工具提供了灵活且可定制的工作流程,能够根据项目需求进行调整。本文将详细介绍如何在 Ubuntu 22.04 LTS 上安装和配置 Jira。 ... [详细]
  • 本文介绍了一种方法,通过在Linux启动时运行一个Python程序,该程序可以在PMOD OLED上显示PYNQ板的IP地址。 ... [详细]
  • 本文详细介绍了如何在 CentOS 7 及其衍生发行版(如 Red Hat, Oracle, Scientific Linux 7)上安装和完全卸载 GitLab。包括安装必要的依赖关系、配置防火墙、安装 GitLab 软件包以及常见问题的解决方法。 ... [详细]
author-avatar
门前西瓜飘乐
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有