gpt4 book ai didi

systemd - systemd的 'oneshot'和 'simple'服务类型有什么区别?

转载 作者:行者123 更新时间:2023-12-03 01:03:40 28 4
gpt4 key购买 nike

systemd 服务Type oneshotsimple 之间有什么区别?这个link声明使用 simple 而不是 oneshot 作为计时器。我无法正确理解它。

最佳答案

Type=oneshot 服务单位:

  • 阻塞启动操作,直到第一个进程退出,其状态将报告为“正在激活”;

  • 一旦第一个进程退出,就会从“激活”直接转换为“非事件”,除非设置了 RemainAfterExit=true (在这种情况下,它将变为“事件”,没有进程!) ;

  • 可以有任意数量(0个或更多)的ExecStart=指令,这些指令将按顺序执行(等待每个启动的进程退出,然后再启动下一个进程);

  • 可以省略 ExecStart= 但有 ExecStop= (与 RemainAfterExit=true 一起使用,用于安排在系统上运行的内容关闭)。

Type=simple 服务单元:

  • 不会阻止启动操作(即在 fork 第一个进程后立即变为“事件”,即使它仍在初始化!);

  • 一旦第一个进程退出,就会从“事件”转换为“非事件”(没有 RemainAfterExit= 选项);

  • 通常不鼓励这样做,因为无法区分“由于配置错误而在启动时退出”和“运行时 500 毫秒后崩溃”等情况。

Type=oneshotType=simple 单位:

  • 忽略第一个进程的任何子进程,因此不要将这些模式与派生进程一起使用(注意:您可以将 Type=oneshotKillMode=none 一起使用,但只有在您知道自己在做什么的情况下才可以这样做)。

关于systemd - systemd的 'oneshot'和 'simple'服务类型有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39032100/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com