Linux 中服务进程如何配置 Systemd Restart 使得服务可以自动启动

本文介绍了Systemd,一种用于Linux发行版的初始化系统和服务管理器。重点解释了Restart参数的作用及设置方法,包括no、on-failure和always三个选项,并通过实例展示了不同设置的应用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

Systemd 介绍

Restart 参数说明

Restart 参数设置

举例说明


Systemd 介绍

Systemd 是一个新的init系统和系统管理器,它通过传统的 SysV init 系统实现/适用于所有主要的 Linux 发行版。systemd 与 SysV 和 LSB init 脚本兼容,它可以作为 sysvinit 系统的直接替代品。systemd 是内核启动并保持 PID 1 的第一个进程。systemctl 是命令行实用程序和主要工具,用于管理 systemd 守护程序/服务,例如启动、重新启动、停止、启用、禁用、重新加载和状态。

systemd 使用.service 文件而不是 bash 脚本(SysV init使用),systemd 将所有守护进程排序到他们自己的 Linux cgroup 中,你可以通过浏览 /cgroup/systemd 文件来查看系统层次结构。

Restart 参数说明

Restart 参数含义在于服务进程退出、终止或超时后,是否重新启动服务,有三个值可以设置,分别为:no,on-failure,always

Restart 参数设置

  • no 表示服务退出时,服务不会自动重启,默认值。
  • on-failure 表示当进程以非零退出代码退出,由信号终止;当操作(如服务重新加载)超时;以及何时触发配置的监视程序超时时,服务会自动重启。
  • always 表示只要服务退出,则服务将自动重启。

举例说明

比如服务 sshd.service 

该服务在 Systemd 中的 Restart 设置的是 on-failure。 

比如服务 console-getty.service

该服务在 Systemd 中的 Restart 设置的是 always。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值