linux 安装脚本 可执行文件 称为系统服务 开机自启

简介: linux 安装脚本 可执行文件 称为系统服务 开机自启

我的脚本在当前安装的目录下面名为report3.py 使用usr/bin/python3来运行可以参照下面的ExecStart 修改那里就行了

#!/bin/bash
echo 当前进程id为 $$
SERVICE_NAME="report3.service" # 不能乱加空格
readonly SERVICE_NAME
BASE_DIR="$(pwd)"
#*************************删除旧文件*********************************#
sudo rm ${SERVICE_NAME}
#*************************创建report3.service*********************************#
echo "[Unit]
Description=gyz report ip mac to httpserver
[Service]
Type=simple
WorkingDirectory=${BASE_DIR}
Restart=on-failure
ExecStart=/usr/bin/python3 ${BASE_DIR}/report3.py
KillMode=process
KillSignal=SIGINT
TimeoutStopSec=600s
[Install]
WantedBy=multi-user.target
Alias=${SERVICE_NAME}
">>${SERVICE_NAME}
#*************************添加可执行权限*********************************#
echo 正在安装${SERVICE_NAME}...
service_path="${BASE_DIR}/${SERVICE_NAME}"
sudo chmod 777 ${BASE_DIR}/*.*
#*************************安装report3.service到系统目录*********************************#
sudo ln -sf ${service_path} /lib/systemd/system/${SERVICE_NAME} #\
sudo systemctl daemon-reload
sudo systemctl enable ${SERVICE_NAME}
sudo systemctl start ${SERVICE_NAME}
#***************************************************************#
echo "结束"
if [ $(ps -ef | grep -c "report" ) -ge 2 ]; #统计
then 
    printf "服务正在启动...\n"
else 
    printf "服务正在安装失败\n"
fi
exit 0
目录
相关文章
|
1天前
|
Oracle 关系型数据库 Linux
SuSE linux server 11通过SAP来安装oracle11g
SuSE linux server 11通过SAP来安装oracle11g
|
1天前
|
Linux C语言
suse linux 11 安装GCC开发环境
suse linux 11 安装GCC开发环境
|
1天前
|
Ubuntu Linux 编译器
【Linux】详解动静态库的制作和使用&&动静态库在系统中的配置步骤
【Linux】详解动静态库的制作和使用&&动静态库在系统中的配置步骤
|
1天前
|
Linux Windows
虚拟机添加新硬盘之linux系统篇
虚拟机添加新硬盘之linux系统篇
|
1天前
|
Linux Shell
Linux操作系统下查找大文件或目录的技巧
Linux操作系统下查找大文件或目录的技巧
|
1天前
|
算法 Linux
Linux:文件增删 & 文件压缩指令
Linux:文件增删 & 文件压缩指令
5 0
|
1天前
|
监控 安全 Linux
Linux系统入侵排查(三)
本文介绍了Linux系统入侵排查的相关知识。首先解释了进行系统入侵排查的原因,即当企业遭受黑客攻击、系统崩溃或其他安全事件时,需要迅速恢复系统并找出入侵来源。接着,重点讲述了日志入侵排查的重要性,因为日志文件记录了系统的重要活动,可以提供入侵行为的线索。
|
1天前
|
安全 Linux Shell
Linux系统入侵排查(二)
本文介绍了Linux系统入侵排查的步骤,包括检查历史命令记录、可疑端口和进程、开机启动项以及定时任务。作者强调了了解这些技能对于攻防两端的重要性,并提供了相关命令示例,如查看`/root/.bash_history`记录、使用`netstat`分析网络连接、检查`/etc/rc.local`和`/etc/cron.*`目录下的可疑脚本等。此外,还提到了如何查看和管理服务的自启动设置,以判断是否被恶意篡改。文章旨在帮助读者掌握Linux服务器安全维护的基本技巧。
|
2月前
|
Linux
linux中服务管理
在Linux服务管理中,从传统的System V init到Upstart,再到广泛采用的systemd,管理方式不断发展。systemd以其强大的功能和依赖解决成为现代Linux的核心。`systemctl`是管理服务的关键命令,如启动(`start`)、停止(`stop`)、重启(`restart`)服务及设置开机启动(`enable`)或取消(`disable`)。了解和服务管理,特别是systemd和`systemctl`的使用,对系统管理员至关重要。其他如xinetd用于控制网络服务,而特定环境下有OpenRC等工具。
18 2
|
10月前
|
安全 Ubuntu 网络协议
Linux中的服务管理
Linux系统可以同时运行数百个任务。其中大多数都属于操作系统环境的组成部分,不过可能也会有那么一两个你不需要的**守护进程**。有3种可用于启动守护进程和服务的工具,Linux发行版支持其中任意一种。传统的SysV系统使用/etc/init.d中的脚本。较新的systemd守护进程除了使用/etc/init.d之外,还用到了systemctl调用。还有些发行版使用的是upstart,配置脚本保存在/etc/init中。systemd如今已经取代了SysVinit系统。upstart是由Ubuntu开发并采用的,但是在14.04版中,已经改成了systemd。
112 3