Centos7的服务systemctl脚本存放在: /usr/lib/systemd/

有系统(system)和用户(user)之分,需要开机不登陆就能运行的程序,存下系统服务里,即:/usr/lib/systemd/system目录下。

Centos7的每一个服务以.service结尾,一般会分为3部分:【Unit】【Service】 【Install】

【Unit】部分主要是对这个服务的说明。

  • Description 用于描述服务
  • After 用于描述服务类别

【Service】部分是服务的关键,是服务的一些具体运行参数的设置。

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

      *注意:   【Service】部分的启动,重启,停止命令全部要求使用绝对路径。使用相对路径则会报错的。

【Install】部分是服务安装的相关设置,客设置为多用户的

  • 使用systemctl start  [ 服务名(也是文件名) ] 可测试服务是否可以成功运行,
  • 如果不能运行则可以使用systemctl status [ 服务名(也是文件名) ]查看错误信息和其他服务信息,然后根据报错进行修改,直到可以start。
  • 如果不放心还可以测试restart和stop命令
  • 接着,只要使用systemctl enable xxxxx就可以将所编写的服务添加至开机启动即可。

  

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

#vim /usr/lib/systemd/system/frpc.service

[Unit]
Description=frps daemon
After=syslog.target network.target
Wants=network.target [Service]
Type=simple
PIDFile=
ExecStart=/usr/local/frpc/frpc -c /usr/local/frpc/frpc.ini
ExecStop=
ExecReload=
Restart= always
RestartSec=1min
PrivateTmp=True [Install]
WantedBy=multi-user.target

添加可执行权限:

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

设置为开机自启动:

#systemctl enable tomcat.service

  

常用指令(以frpc服务为例):

启动某服务
systemctl start frpc.service 停止某服务
systemctl stop frpc.service 重启某服务
service frpc restart
systemctl restart frpc.service 使某服务自动启动(如frpc服务)
systemctl enable frpc.service 使某服务不自动启动
systemctl disable frpc.service 检查服务状态
systemctl status frpc.service (服务详细信息)
systemctl is-active frpc.service(仅显示是否Active) 显示所有已启动的服务
systemctl list-units --type=service

  

Centos7 systemctl添加自定义系统开机服务的更多相关文章

  1. 2. whoami,常用包,调优selinux,七种启动模式,系统开机服务

    1   whoami  查看当前登录用户      useradd zhang   增加用户      passwd  zhang       su - zhang     切换用户        e ...

  2. CentOS7使用systemctl添加自定义服务

    一.简介 Centos7开机第一个程序从init完全换成了systemd这种启动方式,同centos 5 6已经是实质差别.systemd是靠管理unit的方式来控制开机服务,开机级别等功能. 在/u ...

  3. Centos7上添加自定义服务文件并开机启动

    Ⅰ-1 写服务文件 [Unit]   ##服务的说明Description:描述服务After:描述服务类别 [Service]   ##服务运行参数的设置Type=forking是后台运行的形式Ex ...

  4. CentOS7利用systemctl添加自定义系统服务【转】

    systemctl enable name.service 设置开机启 systemctl disable name.service 删除开机启动指令 systemctl list-units --t ...

  5. SpringBoot 在CentOS7部署,注册为服务,开机启动

    1.首先在maven工程的pom文件中引入以下标签并保存 <build> <plugins> <plugin> <groupId>org.springf ...

  6. CentOS7 利用systemctl添加自定义系统服务

    一.命令systemctl介绍 CentOS 7.0中已经没有service命令,而是启用了systemctl服务器命令,它实际上将 service 和 chkconfig 这两个命令组合到一起. 命 ...

  7. CentOS7.6下设置mysql服务开机启动

    在centos7中所有对服务的管理都集中到了systemctl当中,所以服务的启动.关闭.重启.开机启动等等的操作都可以用systemctl. systemctl对服务的管理都是通过配置文件,配置文件 ...

  8. 对于应用需要记录某个方法耗时的场景,必须使用clock_gettime传入CLOCK_MONOTONIC参数,该参数获得的是自系统开机起单调递增的纳秒级别精度时钟,相比gettimeofday精度提高不少,并且不受NTP等外部服务影响,能准确更准确来统计耗时(java中对应的是System.nanoTime),也就是说所有使用gettimeofday来统计耗时(java中是System.curre

    对于应用需要记录某个方法耗时的场景,必须使用clock_gettime传入CLOCK_MONOTONIC参数,该参数获得的是自系统开机起单调递增的纳秒级别精度时钟,相比gettimeofday精度提高 ...

  9. Centos7禁止或者允许开机启动服务

    [root@bogon rsyslog.d]# systemctl is-enabled httpd disabled [root@bogon rsyslog.d]# systemctl status ...

随机推荐

  1. 10.02经典类的bug

    #以下在python 3.6版本里已没有这个问题了1class A: def _init__(self): print ("this is A") def save(self): ...

  2. DPDK Hash Library原理(学习笔记)

    0 前言 本文主要翻译至DPDK的官方编程指南,在谷歌翻译的基础上根据自己的理解做了一些修改.网上搜索的很多中文翻译大多是翻译后直接黏贴上来,有时候连语句都读不通.希望本文能够对你有所帮助. 1 介绍 ...

  3. .NET 合并程序集(将 dll 合并到 exe 中)

    ------------恢复内容开始------------ ------------恢复内容开始------------ 背景:我们的应用程序通常都是由多个程序集组成,例如一个 exe 程序依赖于多 ...

  4. mysql小白系列_04 binlog(未完)

    mysql打开.查看.清理binlog 1.开启日志 log_bin=/var/lib/mysql/mysql-bin mysql> show variables like '%log_bin% ...

  5. PSR-0到PSR-4编程规范

    PHP-FIG 在说啥是PSR-[0-4]规范的之前,我觉得我们有必要说下它的发明者和规范者:PHP-FIG,它的网站是:www.php-fig.org.就是这个联盟组织发明和创造了PSR-[0-4] ...

  6. html5拖动监听

    在拖动目标上触发事件 (源元素): ondragstart - 用户开始拖动元素时触发 ondrag - 元素正在拖动时触发 ondragend - 用户完成元素拖动后触发 释放目标时触发的事件: o ...

  7. Python——关于定义过程

    def sum(a,b): a = a + b return a print(sum(1,2)) s = 3 t = 5 print(sum(s,t)) 题目:你觉得前三行代码会输出什么? 1.输入两 ...

  8. 【CTFHUB】Web技能树

    Web HTTP协议 请求方式

  9. seacms_6.4.5 前台任意代码执行漏洞分析

    环境搭建 1.下载安装包 下载地址: 链接:https://pan.baidu.com/s/1uw_VnxnvG4GGEae4TRsGGw 密码:cd48 2.常规安装 漏洞复现 poc1: http ...

  10. 03 . Python入门之运算符

    一.什么是运算符? 举个简单的例子** 4 +5 = 9 . 例子中,4** 和 5 被称为操作数,"+" 称为运算符. Python语言支持以下类型的运算符: [算术运算符] [ ...