1、systemctl
用法:systemctl [OPT] COMMAND [NAME]…
启动服务:systemctl start NAME.service
停止服务:systemctl stop NAME.service
重启服务:systemctl restart NAME.service
服务状态:systemctl status NAME.service
条件式重启,已启动才重启,否则不作操作:systemctl try-restart NAME.service
重载或重启服务,先加载再启动:systemctl reload-or-restart NAME.service
重载或条件式重启:systemctl reload-or-try-restart NAME.service
禁止自动和手动启动:systemctl mask NAME.service
取消禁止:systemctl unmask NAME.service
查看某服务当前激活与否的状态:systemctl is-active NAME.service
查看所有已经激活的服务:systemctl list-units -t service
查看所有服务:systemctl list-units -t service -a
设定某服务开机自启动:systemctl enable NAME.service
设定某服务开机禁止启动:systemctl disable NAME.service
查看所有服务的开机自启动状态:systemctl list-unit-files –t service
列出该服务在哪些运行级别下启用和禁止:ls /etc/systemd/system/*.wants/sshd.service
查看服务是否开机启动:systemctl is-enabled NAME.service
查看服务的依赖关系:systemctl list-dependencies NAME.service
杀掉进程:systemctl kill (进程名)

2、服务状态:
loaded:unit配置文件已处理
active(running):一次或多次持续处理的运行
active(exited):成功完成一次性配置
active(waiting):运行中,等待一个事件
inactive:不运行
enable:开机启动
disable:开机不启动
static:开机不启动,但可以被另一个启用的服务激活。

3、运行级别:
0 :关机:poweroff.target
1 :单用户模式:rescue.target
2 :默认不启用NFS的多用户:multi-user.target
3 :完全的多用户:multi-user.target
4 :保留:mult-user.target
5 :图形:graphical.target
6 :重启:reboot.target

5、Unit文件格式:
/etc/systemd/system:系统管理员和用户使用;
/usr/lib/systemd/system:发行版打包者使用;
默认单位是秒;通常由三部分组成:

[Unit]:定义与unit类型无关的通用选项;用于提供unit的描述信息,unit行为及依赖关系;

常用的选项:
Description:描述信息
After:定义unit的启动次序,表示当前unit应该晚于哪些unit启动,其功能与Before相反;
Requires:依赖到的其它units,强依赖,被依赖的units无法激活时,当前unit即无法激活;
Wants:依赖到的其它units,弱依赖;
Conflicts:定义units间的冲突关系。

[Service]:与特定类型相关的专用选项;此处为service类型;

常用选项:
Type:定义影响ExecStart及相关参数功能的unit进程启动类型;
simple:默认值,这个daemon主要由ExecStart接的指令串来启动,启动后常驻于内存中;
forking:由ExacStart启动的程序透过spawns延伸出其它子程序来作为此deamon的主要服务。原生父程序在启动结束后就会终止。
oneshot:与simple类似,不过这个程序在完成工作后就结束,不常驻内存;
dbus:与simple类似,但这个daemon必须要在取得一个D-Bus的名称后,才会继续运作。因此通常也要同时设定BusName=才行;
notify:在启动完成后会发送一个通知消息。还需要配合NotifyAccess来让Systemd接收消息;
idle:与simple类似,要执行这个daemon必须要所有的工作都顺利执行完毕后才会执行。这类的daemon通常是开机到最后才执行即可的服务。
EnvironmentFile:环境配置文件;
ExecStart:指明启动unit要运行命令或脚本的绝对路径;
ExecStartPre:在ExecStart之前运行;
ExecStartPost:在ExecStart之后运行;
ExecStop:指明停止unit要运行的命令或脚本;
Restart:当设定Restart=1时,则当次daemon服务意外终止后,会再次自动启动。

[Install]:定义由”systemctl enable”以及”systemctl disable”命令在实现服务启动或禁用时用到的一些选项。
Alias:别名,可使用systemctl command Alias.service
RequiredBy:被哪些units所依赖,强依赖;
WantedBy:被哪些units所依赖,弱依赖;
Also:安装本服务的时候还要安装别的相关服务。

centos7将可执行程序做成服务的更多相关文章

  1. 把linux可执行程序做成一个服务[转]

    转自:http://www.2cto.com/os/201202/121249.html 在linux系统启动的时候,我们可以看到很多服务性程序一个接一个的被启动(就是那些后面有一个兰色[OK]的行) ...

  2. 在 CentOS7 上部署 zookeeper 服务

    在 CentOS7 上部署 zookeeper 服务 1 用 SecureCRT 或 XShell 等 Linux 客户端工具连接至 CentOS7 服务器: 2 进入到 /usr/local/too ...

  3. CentOS7下安装SVN服务端

    CentOS7下安装SVN服务 1. yum命令即可方便的完成安装# sudo yum install subversion 测试安装是否成功:# svnserve --version 更改svn的默 ...

  4. linux下脚本做成服务

    一.脚本做成服务 1.把启动脚本复制到 /etc/init.d目录中 2.脚本内容 xxxx代表jar包名称 #!/usr/bin/env bash # chkconfig: 2345 20 80 # ...

  5. centos7非centos标准服务 /etc/init.d/service_name start || stop 启动异常

    公司自己写的java程序,在centos7系统执行/etc/init.d/service_name start||stop的时候报错: grafana二次开发的程序 [root@docp1 init. ...

  6. tomcat做成服务

    如果Tomcat是安装版的话服务就已经有了,那么解压版的tomcat(我就经常这么做)没服务怎么办了?     手动把tomcat做成服务方法:      1.环境变量配置jdk      2.运行c ...

  7. (转)Centos7安装配置NFS服务和挂载

    Centos7安装配置NFS服务和挂载 原文:https://www.u22e.com/601.html NFS简介 NFS(Network File System)即网络文件系统,是FreeBSD支 ...

  8. Linux操作系统-CentOS7启动流程和服务管理

    Linux操作系统-CentOS7启动流程和服务管理 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.systemd POST --> Boot Sequence --&g ...

  9. 基于CentOS7系统添加自定义脚本服务及参数说明【转】

    概述 centos6如果要添加自定义脚本服务只需要把脚本放到/etc/init.d然后授权后用chkconfig添加后就可以管理了,那么centos7又是怎么添加自定义脚本服务呢? CentOS7添加 ...

随机推荐

  1. MapServer Tutorial——MapServer7.2.1教程学习——教程背景

    MapServer Tutorial——MapServer7.2.1教程学习——教程背景 一.前言 目前处于MapServer学习入门阶段,所以每一步都需要打下扎实基础.尽自己最大的努力,去学习知识的 ...

  2. 跟随我在oracle学习php(9)

    三目运算符:表达式? 表达式: 表达式: 自增在前在后没有影响 参与表达式需要注意 在前先计算,在后最后加1. + 字符串拼接. 字符串转数字:从左到右第一个不是数字的位置结束 取整 parseInt ...

  3. leetcode 总结 动态规划问题小结

    动态规划 动态规划对于子问题重叠的情况特别有效,因为它将子问题的解保存在表格,当需要某个子问题的解 时,直接取值即可,从而避免重复计算. 基本思路与策略 基本思想与分治法类似,也是将带求解的问题分解为 ...

  4. 理解linux下的load

    我们在做Linux负载计算的时候,我们需要了解负载的几个概念 1)Linux负载是什么 2)Linux负载怎么计算 3)如何区分目前负载是“好”还是“坏” 4)什么时候应该注意哪些不正常的值   1) ...

  5. LAMP架构(三)

    第十九课 LAMP架构(三) 目录 一.配置防盗链 二.访问控制Directory 三.访问控制FilesMatch 四.限定某个目录禁止解析php 五.限制user_agent 六.php相关配置 ...

  6. go web framework gin 启动流程分析

    最主要的package : gin 最主要的struct: Engine Engine 是整个framework的实例,它包含了muxer, middleware, configuration set ...

  7. ui自动化:python+appium----环境搭建

    前言: appium可以说是app最火的一个自动化框架,它的主要优势是支持android和ios,另外脚本支持java和python.以下为python+appium的安装教程... 环境准备... ...

  8. cat语法

    语法格式 cat [-AbeEnstTuv] [--help] [--version] fileName 参数说明: -n 或 --number:由 1 开始对所有输出的行数编号. -b 或 --nu ...

  9. 学习笔记TF015:加载图像、图像格式、图像操作、颜色

    TensorFlow支持JPG.PNG图像格式,RGB.RGBA颜色空间.图像用与图像尺寸相同(height*width*chnanel)张量表示.通道表示为包含每个通道颜色数量标量秩1张量.图像所有 ...

  10. VS2010添加虚拟机发布的WebService引用

    首先,WebServer已在虚拟机中完成发布.在网页中浏览可以看到如下所示内容 需要注意的是在发布时要给网站设置IP地址.如果在添加网站时没有设置,之后可以在网站绑定中进行修改.步骤如下: 1.选中网 ...