linux中的unit的配置文件

https://blog.csdn.net/weixin_34195546/article/details/92135827

 

配置文件格式

1)unit配置文件格式

[Unit]

Description=backup /etc

Requires=atd.service

[Service]

Type=simple

ExecStart=/bin/bash -c "echo /testdir/bak.sh|at now"

[Install]

WantedBy=multi-user.target

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

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

[Install]:定义由“ systemctl enable”以及"systemctl disable“命令在实现服务启用或禁用时用到的一些选项

2、Unit段的常用选项:

Description:描述信息

After:定义unit的启动次序,表示当前unit应该晚于哪些

unit启动,其功能与Before相反

Requires:依赖到的其它units,强依赖,被依赖的units无法激活时,当前unit也无法激活

Wants:依赖到的其它units,弱依赖

Conflicts:定义units间的冲突关系

BindsTo:与Requires类似,它指定的 Unit 如果退出,会导致当前 Unit 停止运行

Before:如果该字段指定的 Unit 也要启动,那么必须在当前 Unit 之后启动

Conflicts:这里指定的 Unit 不能与当前 Unit 同时运行

Condition...:当前 Unit 运行必须满足的条件,否则不会运行

Assert...:当前 Unit 运行必须满足的条件,否则会报启动失败

3、service常用的选项

Type:定义影响ExecStart及相关参数的功能的unit进程启动类型

    simple:默认值,这个daemon主要由ExecStart接的指令串来启动,启动后常驻于内存中

forking:由ExecStart启动的程序透过spawns延伸出其他子程序来作为此daemon的主要服务。原生父程序在启动结束后就会终止。

  1.  
    oneshot:与simple类似,不过这个程序在工作完毕后就结束了,不会常驻在内存中
  2.  
     
  3.  
    dbus:与simple类似,但这个daemon必须要在取得一个D-Bus的名称后,才会继续运作.因此通常也要同时设定BusNname= 才行
  4.  
     
  5.  
    notify:在启动完成后会发送一个通知消息。还需要配合NotifyAccess 来让 Systemd 接收消息
  6.  
     
  7.  
    idle:与simple类似,要执行这个daemon必须要所有的工作都顺利执行完毕后才会执行。这类的daemon通

常是开机到最后才执行即可的服务。

  1.  
    EnvironmentFile:环境配置文件
  2.  
     
  3.  
    ExecStart:指明启动unit要运行命令或脚本的绝对路径
  4.  
     
  5.  
    ExecStartPre: ExecStart前运行
  6.  
     
  7.  
    ExecStartPost: ExecStart后运行
  8.  
     
  9.  
    ExecRsload: 重启当前服务时执行的命令
  10.  
     
  11.  
    ExecStopPost:停止当前服务之后执行的命令
  12.  
     
  13.  
    ExecStartSec:自动重启当前服务间隔的秒数
  14.  
     
  15.  
    ExecStop:指明停止unit要运行的命令或脚本
  16.  
     
  17.  
    Restart:当设定Restart=1 时,则当次daemon服务意外终止后,会再次自动启动此服务。
  18.  
     
  19.  
    TimeoutSec:定义 Systemd 停止当前服务之前等待的秒数。
  20.  
     
  21.  
    Environment:指定环境变量。
4、install 常用选项

Install段的常用选项:

Alias:别名,可使用systemctl command Alias.service

RequiredBy:被哪些units所依赖,强依赖

WantedBy:被哪些units所依赖,弱依赖

Also:安装本服务的时候还要安装别的相关服务

注意:对于新创建的unit文件,或者修改了的unit文件,要通知systemd重载此配置文件,而后可以选择重启。

  1.  
    # systemctl daemon-reload
  2.  
     
  3.  
    # systemctl daemon-reload

#systemctl restart httpd.service

更加详细的unit配置文件格式 请参考官方文档

posted on   四海骄阳  阅读(542)  评论(0编辑  收藏  举报

编辑推荐:
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
阅读排行:
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期
· 从文本到图像:SSE 如何助力 AI 内容实时呈现?(Typescript篇)
· 全程使用 AI 从 0 到 1 写了个小工具

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示

喜欢请打赏

扫描二维码打赏

了解更多