1.17. 使用实例化单元


您可以使用单个 systemd 模板配置来简化多个服务实例的管理。

要管理服务的多个实例,您可以使用单个模板配置。您可以为单元定义一个通用模板,并以 @ 表示,并在运行时使用特定参数生成多个单元实例。通过使用 RequiresWants 选项或 systemctl start 命令,您可以开始从另一个单元文件实例化单元。

<template_name>@<instance_name>.service

<template_name> 代表模板配置文件的名称。将 <instance_name> 替换为单元实例的名称。多个实例可以指向带有通用于单元所有实例的配置选项的同一个模板文件。模板单元名称具有以下格式:

<unit_name>@.service

例如,单位文件中的以下 Wants 设置:

Wants=getty@ttyA.service getty@ttyB.service

有了这个命令,systemd 会搜索给定的服务单元。如果没有找到这样的单元,@ 和类型后缀之间的部分将被忽略。systemd 搜索 getty@.service 文件,从中读取配置并启动服务。

例如,getty@.service 模板具有以下指令:

[Unit]
Description=Getty on %I
...
[Service]
ExecStart=-/sbin/agetty --noclear %I $TERM
...

getty@ttyA.servicegetty@ttyB.service 是从 getty@.service 模板实例化时,Description=Getty on %I 被解析为 Getty on ttyAGetty on ttyB

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部