centos7将可执行程序做成服务
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将可执行程序做成服务的更多相关文章
- 把linux可执行程序做成一个服务[转]
转自:http://www.2cto.com/os/201202/121249.html 在linux系统启动的时候,我们可以看到很多服务性程序一个接一个的被启动(就是那些后面有一个兰色[OK]的行) ...
- 在 CentOS7 上部署 zookeeper 服务
在 CentOS7 上部署 zookeeper 服务 1 用 SecureCRT 或 XShell 等 Linux 客户端工具连接至 CentOS7 服务器: 2 进入到 /usr/local/too ...
- CentOS7下安装SVN服务端
CentOS7下安装SVN服务 1. yum命令即可方便的完成安装# sudo yum install subversion 测试安装是否成功:# svnserve --version 更改svn的默 ...
- linux下脚本做成服务
一.脚本做成服务 1.把启动脚本复制到 /etc/init.d目录中 2.脚本内容 xxxx代表jar包名称 #!/usr/bin/env bash # chkconfig: 2345 20 80 # ...
- centos7非centos标准服务 /etc/init.d/service_name start || stop 启动异常
公司自己写的java程序,在centos7系统执行/etc/init.d/service_name start||stop的时候报错: grafana二次开发的程序 [root@docp1 init. ...
- tomcat做成服务
如果Tomcat是安装版的话服务就已经有了,那么解压版的tomcat(我就经常这么做)没服务怎么办了? 手动把tomcat做成服务方法: 1.环境变量配置jdk 2.运行c ...
- (转)Centos7安装配置NFS服务和挂载
Centos7安装配置NFS服务和挂载 原文:https://www.u22e.com/601.html NFS简介 NFS(Network File System)即网络文件系统,是FreeBSD支 ...
- Linux操作系统-CentOS7启动流程和服务管理
Linux操作系统-CentOS7启动流程和服务管理 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.systemd POST --> Boot Sequence --&g ...
- 基于CentOS7系统添加自定义脚本服务及参数说明【转】
概述 centos6如果要添加自定义脚本服务只需要把脚本放到/etc/init.d然后授权后用chkconfig添加后就可以管理了,那么centos7又是怎么添加自定义脚本服务呢? CentOS7添加 ...
随机推荐
- 命令行听歌http://www.linuxsir.org/bbs/thread280142.html?pageon=1#1584689
在纯字符界面下听歌 利用 play 命令可以在命令行中播放音频文件,在纯字符界面下也没问题! ----------------------------------------------------- ...
- equals方法使用技巧
Object类中的equals方法用于检测一个对象是否等于另外一个对象.在Object类中,这个方法将判断两个对象是否具有相同的引用. 如果两个对象那个具有相同的引用,他们一定是相同的,从这方面看,将 ...
- 二十五. Python基础(25)--模块和包
二十五. Python基础(25)--模块和包 ● 知识框架 ● 模块的属性__name__ # my_module.py def fun1(): print("Hello& ...
- [ZJOI2007]最大半联通子图
这个题,翻译一下题面,就是一个连通图,找他的最长链的数量... 所以说方法就比较明显了:tarjan缩点+拓扑+DP 注意也是本题唯一坑点,拓扑DP的时候要考虑重复边的情况... 呆码: #inclu ...
- css样式问题解决
1.关于滚动条 (1)布局后由于写了 overflow-y: scroll; 在内容还没有超出就出现了滚动条. 我的解决方法是直接去掉了滚动条: .class::-webkit-scrollbar { ...
- 利用htmlparser读取html文档的内容
1.添加相关的的jar htmlparser-2.1.jar 2.方法和代码 public static String readHtml(File html) { String htmlPath = ...
- hadoop day 5
1.Zookeeper Zookeeper的安装和配置(集群模式) 1)在conf目录下创建一个配置文件zoo.cfg, tickTime=2000——心跳检测的时间间隔(ms) dataDir=/U ...
- 统计php-fpm内存占用
查看php-fpm的内存占用 1.查看php-fpm的进程个数 ps -ef |grep "php-fpm"|grep "pool"|wc -l 2.查看每个p ...
- C高级第二次作业
PTA作业第一部分 6-7 删除字符串中数字字符(10 分) 删除一个字符串中的所有数字字符. 函数接口定义: void delnum(char *s); 其中 s是用户传入的参数. 函数的功能是删除 ...
- php连接redis服务
$redis = new Redis(); $redis->connect('127.0.0.1', 6379);//可以执行redis操作了.....