community.general.openwrt_init 模块 – 在 OpenWrt 上管理服务

注意

此模块是 community.general 集合 (版本 10.1.0) 的一部分。

如果您使用的是 ansible 包,则可能已经安装了此集合。它不包含在 ansible-core 中。要检查是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用: ansible-galaxy collection install community.general。您需要其他要求才能使用此模块,请参阅 要求 获取详细信息。

要在 playbook 中使用它,请指定: community.general.openwrt_init

概要

  • 控制远程主机上的 OpenWrt 服务。

要求

执行此模块的主机需要以下要求。

  • 一个 OpenWrt 系统(带有 python)

参数

参数

注释

enabled

布尔值

服务是否应在启动时启动。**至少需要 state 和 enabled 中的一个。**

选项

  • false

  • true

name

别名:service

字符串 / 必填

服务的名称。

pattern

字符串

如果服务未响应“running”命令,请命名一个子字符串,以便在 ps 命令的输出中查找,作为“running”结果的替代。如果找到该字符串,则认为该服务正在运行。

state

字符串

started/stopped 是幂等操作,除非必要,否则不会运行命令。

restarted 将始终重启服务。

reloaded 将始终重新加载。

选项

  • "started"

  • "stopped"

  • "restarted"

  • "reloaded"

属性

属性

支持

描述

check_mode

支持:完全支持

可以在 check_mode 中运行并返回更改状态预测,而无需修改目标。

diff_mode

支持:不支持

在 diff 模式下,将返回有关已更改内容(或可能需要在 check_mode 中更改的内容)的详细信息。

备注

注意

  • 除了 name 之外,还需要一个选项。

示例

- name: Start service httpd, if not running
  community.general.openwrt_init:
    state: started
    name: httpd

- name: Stop service cron, if running
  community.general.openwrt_init:
    name: cron
    state: stopped

- name: Reload service httpd, in all cases
  community.general.openwrt_init:
    name: httpd
    state: reloaded

- name: Enable service httpd
  community.general.openwrt_init:
    name: httpd
    enabled: true

作者

  • Andrew Gaffney (@agaffney)