深入理解 Linux systemd 单元类型及配置详解

深入理解 Linux systemd 单元类型及配置详解

在 Linux 系统中,systemd 是一种强大的初始化系统和服务管理工具,它通过**单元(Unit)**来管理服务、文件系统、设备等。systemd 支持多种单元类型,如服务单元(.service)、目标单元(.target)、挂载单元(.mount)、设备单元(.device)、计时单元(.timer)。本文将全面介绍这些单元的用途、常用配置项及实际应用场景。


1. 服务单元(*.service)

定义

服务单元用于管理系统服务,例如 nginx.servicemysql.service。主要负责定义服务的启动、停止、重启行为。

常用配置项

  • Type=
    指定服务类型:

    • simple(默认):ExecStart 启动的进程就是主进程。
    • forking:后台运行服务,ExecStart 会派生子进程。
    • oneshot:执行一次性任务后退出。
    • notify:服务通过 sd_notify 通知启动完成。
    • idle:延迟启动,直到所有任务完成。
  • ExecStart=
    指定启动服务的命令。

  • ExecStop=
    定义停止服务的命令。

  • Restart=
    定义服务的重启策略:

    • always:总是重启。
    • on-failure:仅在非正常退出时重启。
  • User=Group=
    定义服务运行的用户和组。

示例

你可能感兴趣的:(linux云计算,linux,运维,服务器)