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. JS的函数和对象二

    复习 递归,在函数内部调用自身  return 匿名函数  function(){   } 创建函数,函数表达式  var fn=function(){   } 自调用   (function(){ ...

  2. hdu6005找带权最小环

    题意:给你点和边,让你找最小环的权值,其权值是所有边权的和,没环输出-1. 解法:枚举每一条边,找到其端点,做最短路.. #include<cstdio> #include<cstr ...

  3. freemark+dom4j实现自动化word导出

    导出word我们常用的是通过POI实现导出.POI最擅长的是EXCEL的操作.word操作起来样式控制还是太繁琐了.今天我们介绍下通过FREEMARK来实现word模板导出. 目录 开发准备 模板准备 ...

  4. ExtJS动态隐藏Panel中按钮

    1.直接隐藏 在bbar的按钮中直接加属性:hidden : true 属性,可隐藏:disabled : true 属性,可禁用 在columns列中直接加属性:hidden : true 属性,可 ...

  5. Element-UI自定义主题

    Element-UI自定义主题 1.介绍:我们可以自定义样式去覆盖element-ui的默认样式 // 在项目目录中新建 element-variables.scss 文件 // 上面为修改的变量 $ ...

  6. elementUI中el-input输入数字且保留指定小数位

    <input type="text" placeholder="请输入保留一位小数的数字" class="user-input user-nam ...

  7. 你确信 X-Forwarded-For 拿到的就是用户真实 IP 吗?

    X-Forwarded-For 拿到的就是真实 IP 吗? 1.故事 在这个小节开始前,我先讲一个开发中的小故事,可以加深一下大家对这个字段的理解. 前段时间要做一个和风控相关的需求,需要拿到用户的 ...

  8. Java IO(十) BufferedInputStream 和 BufferedOutputStream

    Java IO(十)BufferedInputStream 和 BufferedOutputStream 一.BufferedInputStream 和 BufferedOutputStream (一 ...

  9. Bank3

    Account: package banking3; //账户 public class Account { private double balance;// 账户余额 public Account ...

  10. 附019.Rancher搭建及使用

    一 Rancher概述 1.1 什么是Rancher Rancher 是为使用容器的公司打造的容器管理平台.Rancher 简化了使用 Kubernetes 的流程,方便开发者可以随处运行 Kuber ...