标签:如何创建系统单元文件

如何创建一个系统单元文件

如何创建系统单元文件

在描述了类型方向之后,我们查看了文件的“服务”部分。接下来,我们将通过查看与“服务”部分一起使用的其他核心指令来直接跳转到它。请注意,这些指令都是可选择的,您只需要指定您需要的那个指令。

如何创建一个系统单元文件
如何创建一个系统单元文件

ExecStart=这个指令被用于提供在启动服务时应该执行的命令。

ExecStart=这个指令被用于指定在启动服务之前可能需要执行的命令。

ExecStartPre=这个指令与以上的指定非常相似,但是一旦服务启动,命令就要被执行。

ExecStop=这个指令用于提供一个停止服务的命令,如果没有指定该服务,那么进程就会被破坏。

ExecStopPost=这个指令描述了在停止服务后要运行的命令。

如果systemd是在停止时自动重新启动服务,则使用该指令。这有一些选项,比如“always”、“on-success”、“on-failure”等等。Systemd将根据停止的方式和与这些选项的关系来选择是否重新启动服务。

RestartSec=这个用于指定服务停止重新启动后的秒数,如果systemd要重新启动它的话。

ExecReload=这可以用于指定一个命令,以便在它支持它时重新加载服务的配置。

TimeoutSec=在假定服务没有响应并杀死它之前,systemed应该等待的秒数。

单元文件的末尾通常是“Install”部分,该部分用于定义与如何启用该单元有关的信息。如果单元不启用,那么这个部分就可以被忽略了。

让我们来看看其中的一些指示:

WantedBy=此指令用于指定该单元应该在此之前启动的服务。这可以是一个特定的单元,也可以是一个运行级别的目标,例如“多用户”。目标:这意味着在用户登录之前,该服务将需要在最后阶段启动。

需求与上面的相似,但是意味着这里指定的单位不会在没有这个单元运行的情况下运行。

别名=其他单位名称,此单元可以被处理。

当这个单元启动或停止时,允许指定应该被启动/停止的其他单元。

通过这些,您应该拥有您所需要的来为您管理您自己的服务整合一个单元文件的所有信息。单元文件比较好的地方是我们可以用一个简单清晰的易于理解系统的方法来建立它,与要求用户编写用于管理服务的脚本的传统的sysvinit系统不同。有很多可以在单元文件中被使用的指令,而且在系统手册页中有许多完整的列表。实际上,这个列表是很大的,所以您可以花相当长的时间来浏览各种选项。

熟悉这些指令是如何被使用的一种很好的方法是查看您已经安装在您的系统上的服务的多个单元文件。这些文件将存储在/etc/systemd/system/ or /lib/systemd/system/ directory ,而您要查找的文件是那些又“.service”文件扩展名的文件。您可能会认识许多文件的名称,像sshd,apache2 or httpd ((根据您的Linux发行版),等等。所以,检查与您想要设置的服务类似的服务,它可以让您更好地了解文件的布局和您想要使用的指令。

上述文章内容是由ixwebhosting中文指南为大家提供的,如果您想转载此内容,请注明转载出处:http://ixwebhosting.com.cn/