首页 > 系统相关 >在Linux中,怎么把脚本添加到系统服务里,即用 service 来调用?

在Linux中,怎么把脚本添加到系统服务里,即用 service 来调用?

时间:2024-07-10 11:53:06浏览次数:7  
标签:Systemd 服务 service systemctl sudo 即用 Linux your

在Linux中,将脚本添加为系统服务,使其可以通过service命令进行管理,通常涉及以下步骤:

  1. 编写启动脚本
    创建一个启动脚本,该脚本将被Systemd或其他初始化系统用来启动、停止和重启你的应用程序或服务。例如,创建一个名为your_service的脚本,并赋予执行权限:

    #!/bin/bash
    # 你的启动停止逻辑
    # 例如,启动一个Python脚本
    python3 /path/to/your_script.py
    # 停止逻辑可以使用trap捕获信号来实现
    trap 'exit 0' SIGTERM
    
  2. 保存脚本到合适的位置
    通常,启动脚本应该保存在/etc/init.d/目录下,但对于使用Systemd的系统,应该保存在/etc/systemd/system//usr/lib/systemd/system/目录下。

  3. 创建Systemd服务文件
    对于使用Systemd的系统,需要创建一个服务单元文件。例如,创建一个名为your_service.service的文件:

    [Unit]
    Description=Your Service Description
    After=network.target
    
    [Service]
    Type=simple
    ExecStart=/path/to/your_service
    ExecStop=/path/to/your_service stop
    Restart=on-failure
    
    [Install]
    WantedBy=multi-user.target
    

    这个服务文件定义了服务的描述、依赖、启动和停止命令、重启策略等。

  4. 设置服务文件权限
    确保服务文件具有正确的权限:

    sudo chmod 644 /etc/systemd/system/your_service.service
    
  5. 重新加载Systemd管理器配置
    使用以下命令重新加载Systemd以识别新服务:

    sudo systemctl daemon-reload
    
  6. 启用服务自启动
    使用以下命令启用服务,以便在系统启动时自动启动:

    sudo systemctl enable your_service
    
  7. 启动和停止服务
    使用systemctl命令来启动、停止和检查服务状态:

    sudo systemctl start your_service
    sudo systemctl stop your_service
    sudo systemctl status your_service
    
  8. 检查服务日志
    如果服务有日志输出,可以使用journalctl来查看服务的日志:

    sudo journalctl -u your_service
    
  9. 测试服务
    确保服务按预期工作,包括在系统启动时自动启动和响应systemctl命令。

  10. 处理服务依赖
    如果你的服务依赖于其他服务,确保在服务文件中正确设置After=Requires=指令。

综上所述,不同的Linux发行版可能使用不同的初始化系统(如System V init、Upstart等),因此具体的步骤和命令可能有所不同。以上步骤适用于使用Systemd的系统,它是许多现代Linux发行版的默认初始化系统。如果你的系统使用的是其他初始化系统,需要查阅相应的文档来创建和管理服务。

标签:Systemd,服务,service,systemctl,sudo,即用,Linux,your
From: https://www.cnblogs.com/huangjiabobk/p/18293764

相关文章

  • 在Linux中,FTP 的主动模式和被动模式是什么?有何区别?
    在Linux中,FTP(FileTransferProtocol,文件传输协议)的主动模式和被动模式是FTP协议用于在两台计算机之间传输文件时采用的两种不同工作模式。这两种模式的主要区别在于数据连接(即用于文件传输的连接)的发起和建立方式。一、主动模式(PORT模式)定义与工作原理:主动模式是指FTP客户端......
  • Linux: System call
    参考:https://blog.csdn.net/weixin_41028621/article/details/134542010?spm=1001.2101.3001.6650.2&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-2-134542010-blog-130766392.235%5Ev43%5Epc_blog_bottom_relevance_ba......
  • Linux捣鼓记录:快速搭建alist+aria2+qbittorrent
    简介:使用docker-compose创建alistaria2qbittorrent服务,前置条件安装docker及docker-compose插件,docker镜像仓库访问不了,建议配置代理用来拉取镜像。一、确认路径,确认UIDGID,确认端口路径alist挂载路径:-/home/dalong/app/alist:/opt/alist/data-/home/dalong:/homearia......
  • Linux中各种重要命令-面试专用
    查看当前进程ps执行退出exit查看当前路径pwd列出指定目录中的目录以及文件ls创建目录mkdirrunoob #在工作目录下,建立一个名为runoob的子目录mkdir-prunoob2/test #在工作目录下的runoob2目录中,建立一个名为test的子目录。若runoob2目录原本不存在,则建......
  • Rocky Linux 9.4安装MySQL:使用RPM安装包方式
    RockyLinux9.4安装MySQL:使用RPM安装包方式一、安装环境安装环境如下:服务器:RockyLinux9.4安装版本:MySQL8.0.38二、安装过程和细节1、在官网下载RPM安装包官网下载地址如下,这个地址里有各个版本的安装包,根据自己的版本选择,下载对应系统的安装包https://dev.mysql.com/dow......
  • spring boot microservices
    微服务包括这些组件,服务注册,服务发现,负载均衡,配置管理,路由,断流器-过流熔断,分布式系统的日记追踪,服务安全等。thecomponentofspringbootmicroservices.springboot,itprovidesthefoudationforbuildingmicroservices.Itsimplifiestheconfigurationanssetup......
  • 如何彻底关闭Antimalware Service Executable
    如何彻底关闭AntimalwareServiceExecutable?-MicrosoftCommunity ------------------------------------《关闭Windows安全中心》1.同时按【Windows徽标键+X】,启动【WindowsPowerShell(管理员)】2.输入:regadd"HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Window......
  • Windows Server Update Services (WSUS) 是一种由微软提供的服务器软件,允许 IT 管理员
    关于WindowsServerUpdateServices(WSUS)的漏洞,以下是一些已知的漏洞和安全问题:CVE-2021-34484:这是一个严重的远程代码执行漏洞,影响了WSUS服务器。攻击者可以通过构造特定请求利用此漏洞来执行恶意代码。CVE-2020-1317:此漏洞允许攻击者在未经身份验证的情况下获......
  • Linux命令shuf详解:随机排序与数据分析的得力助手
    Linux命令shuf详解:随机排序与数据分析的得力助手引言在Linux系统中,shuf是一个功能强大的命令行工具,用于随机排序、随机抽样和生成随机数。它在数据处理、统计分析以及日常脚本编写中扮演着重要角色。本文将详细介绍shuf命令的基本功能、工作原理、主要参数、应用实例以及......
  • Linux命令skill详解
    Linux命令skill详解引言在Linux系统中,skill命令是一个用于向选定进程发送信号的工具。尽管它不像kill、killall或pkill那样广为人知,但它在管理和控制进程方面同样扮演着重要角色。本文将详细介绍skill命令的基本功能、工作原理、主要特点、使用示例,以及一些注意事项和最佳......