zoukankan      html  css  js  c++  java
  • CentOS7利用systemctl添加自定义系统服务

    CentOS7的服务systemctl脚本存放在:/usr/lib/systemd/,有系统(system)和用户(user)之分,需要开机不登陆就能运行的程序,存在系统服务里,即:/usr/lib/systemd/system目录下.
    CentOS7的每一个服务以.service结尾,一般会分为3部分:[Unit]、[Service]和[Install]
    [Unit]

    部分主要是对这个服务的说明,内容包括Description和After,Description 用于描述服务,After用于描述服务类别

    [Service]部分是服务的关键,是服务的一些具体运行参数的设置.
    Type=forking是后台运行的形式,
    User=users是设置服务运行的用户,
    Group=users是设置服务运行的用户组,
    PIDFile为存放PID的文件路径,
    ExecStart为服务的具体运行命令,
    ExecReload为重启命令
    ExecStop为停止命令,
    PrivateTmp=True表示给服务分配独立的临时空间

    [Service]

    注意:[Service]部分的启动、重启、停止命令全部要求使用绝对路径,使用相对路径则会报错!

    [Install]

    [Install]部分是服务安装的相关设置,可设置为多用户的
    首先,使用systemctl start [ 服务名(也是文件名) ] 可测试服务是否可以成功运行,如果不能运行则可以使用systemctl status [ 服务名(也是文件名) ]查看错误信息和其他服务信息,然后根据报错进行修改,直到可以start,如果不放心还可以测试restart和stop命令。

    接着,只要使用systemctl enable xxxxx就可以将所编写的服务添加至开机启动即可。

    实例:服务用于开机运行tomcat项目:

    #vim /usr/lib/systemd/system/tomcat.service
     
    [Unit]
    Description=java tomcat project
    After=tomcat.service
    
    [Service]
    Type=forking
    User=users
    Group=users
    PIDFile=/usr/local/tomcat/tomcat.pid
    ExecStart=/usr/local/tomcat/bin/startup.sh
    ExecReload=
    ExecStop=/usr/local/tomcat/bin/shutdown.sh
    PrivateTmp=true
    
    [Install]
    WantedBy=multi-user.target

    添加可执行权限:

    chmod 754 /usr/lib/systemd/system/tomcat.service

    设置为开机自启动:

    #systemctl enable tomcat.service

    启动某服务

    systemctl start tomcat.service

    停止某服务

    systemctl stop tomcat.service

    重启某服务

    systemctl restart tomcat.service

    使某服务自动启动

    systemctl enable tomcat.service

    使某服务不自动启动

    systemctl disable tomcat.service

    检查服务状态

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

    显示所有已启动的服务

    systemctl list-units --type=service

    当然也可用shell脚本实现:https://www.cnblogs.com/soymilk2019/p/14978399.html

    原文:https://www.cnblogs.com/saneri/p/7778756.html

    更加详细:https://www.jianshu.com/p/79059b06a121

  • 相关阅读:
    POJ 2723 Get Luffy Out(2-SAT)
    ZOJ 3613 Wormhole Transport
    HDU 4085 Peach Blossom Spring
    NBUT 1221 Intermediary
    NBUT 1223 Friends number
    NBUT 1220 SPY
    NBUT 1218 You are my brother
    PAT 1131. Subway Map (30)
    ZSTU OJ 4273 玩具
    ZSTU OJ 4272 最佳淘汰算法
  • 原文地址:https://www.cnblogs.com/soymilk2019/p/14978460.html
Copyright © 2011-2022 走看看