systemd init系统现在几乎是所有Linux发行版的一部分。作为管理员或开发人员,您创建systemd可以管理的服务。例如,如果您想在引导时启动服务或想手动控制它们,那么可以通过自定义服务文件来完成。
在本教程中,我将介绍如何在Linux上创建systemd服务文件。
什么是服务文件
在进一步讨论之前,让我们先了解一下系统服务文件是什么,以及它是如何在Linux上创建的。
systemd服务文件包含systemd管理服务的指令集。它通常包含三个部分:
- 单位
- 服务
- 安装
Unit部分包含有关服务的基本信息,如简短描述、文档页面和依赖项的路径。安装部分是可选的,但通常它管理应该在什么系统状态下启用服务。
维修部分通常夹在部件和安装部分之间。它主要包含服务的类型和可执行文件的路径,这些可执行文件本质上是在由system d调用服务时执行的命令。
下面是典型的服务文件结构。
【单位】
指令1 =指令
指令2=指令
…
[服务]
指令1 =指令
指令2=指令
…
[安装]
指令1 =指令
指令2=指令
…
在这里,指令是接受其各自输入的参数。例如,DESCRIPTION指令接受服务名称的字符串。以类似的方式,ExecStart会考虑可执行文件的完整路径。
下面给出了一个典型的ssh.service服务文件。
如何创建服务文件
要创建一个system d服务,有必要理解关键指令。在本指南中,我将介绍可帮助您创建功能齐全的服务文件的基本指令。
创建服务文件涉及多个步骤,让我们从创建脚本文件开始。
注意:要继续使用下面提到的方法,您必须具有超级用户权限。
1.创建脚本
初始步骤涉及创建将在服务开始其操作时执行的代码。对于本教程,我将创建一个bash脚本,该脚本将存储Linux系统的正常运行时间和内存使用情况。
让我们使用nano编辑器在当前目录中创建一个名为www.example.com的脚本。
sudo nano www.example.com
现在,将下面给出的脚本添加到文件中,然后按Ctrl + x,然后按y来保存它。
#!/ bin/bash
echo ">>Here is the Uptime of your System>Here is the Memory Usage of your System