使用systemctl自定义系统服务

Posted huskiesir

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用systemctl自定义系统服务相关的知识,希望对你有一定的参考价值。

1.创建系统服务文件,格式如下: 

[Unit]  
Description=httpd
After=network.target  
   
[Service]  
Type=forking  
ExecStart=/usr/local/apache2/bin/apachectl start
ExecReload=/usr/local/apache2/bin/apachectl restart
ExecStop=/usr/local/apache2/bin/apachectl stop 
PrivateTmp=true  
   
[Install]  
WantedBy=multi-user.target

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

[Service]部分是服务的关键,是服务的一些具体运行参数的设置,这里Type=forking是后台运行的形式,PIDFile为存放PID的文件路径,ExecStart为服务的具体运行命令,ExecReload为重启命令,ExecStop为停止命令,PrivateTmp=True表示给服务分配独立的临时空间,注意:[Service]部分的启动、重启、停止命令全部要求使用绝对路径,使用相对路径则会报错!

[Install]部分是服务安装的相关设置,可设置为多用户的

2.建立好系统服务文件后,把其权限改成754放置到/usr/lib/systemd/system下

3.使用systemctl enable httpd 设置开机自启动

以上是关于使用systemctl自定义系统服务的主要内容,如果未能解决你的问题,请参考以下文章

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

CentOS7 systemctl添加自定义系统服务

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

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

Centos7 自定义systemctl服务脚本

CentOS7.5下开发systemctl管理的自定义Rsync启动服务程序