Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ansible 使用init.d文件的自定义路径重新启动服务_Ansible_Aix - Fatal编程技术网

Ansible 使用init.d文件的自定义路径重新启动服务

Ansible 使用init.d文件的自定义路径重新启动服务,ansible,aix,Ansible,Aix,我想通过AIX上的init.d文件重新启动服务。Ansiblesservice和sysvinit不起作用。如何使用Ansible控制这些服务 我知道我可以运行shell命令,但可能有一个内置的解决方案 这就是我在贝壳上要做的: /etc/rc.d/init.d/nrpe重启 来自: 控制远程主机上的服务。支持的init系统包括BSD init、OpenRC、SysV、Solaris SMF、systemd、upstart 基本上,服务模块尝试自动检测使用哪个init系统,并使用该init系统执行

我想通过AIX上的init.d文件重新启动服务。Ansibles
service
sysvinit
不起作用。如何使用Ansible控制这些服务

我知道我可以运行shell命令,但可能有一个内置的解决方案

这就是我在贝壳上要做的:

/etc/rc.d/init.d/nrpe重启
来自:

控制远程主机上的服务。支持的init系统包括BSD init、OpenRC、SysV、Solaris SMF、systemd、upstart

基本上,
服务
模块尝试自动检测使用哪个init系统,并使用该init系统执行操作。但是如果您的init系统不知道该服务(您正在直接运行init脚本,对吗?),它(init系统)将无法重新启动它

因此,如果init系统不知道您的服务,您不能使用
服务
模块或任何其他试图与您的init系统交互的模块

您应该将init脚本放入正确的目录中,以便init系统识别它(然后您还可以运行
服务nrpe restart
),然后使用
服务
模块。

如果由于某种原因无法执行此操作,则需要使用
命令
shell
模块重新启动服务。

这是AIX。没有
服务
命令。主服务系统通过
startsrc
/
stopsrc
控制。我正在使用AIX工具箱中的一些工具,用于Linux应用程序,它们是这样安装的。啊,对不起,我不熟悉AIX。它看起来像是前systemd时代的旧init脚本:D看看这个,也许你会发现一些有用的东西:但实际上,我会使用
shell
command
。特定于Linux的工具在没有修改的情况下不太可能在其上工作。NRPE工作得很好,也很可靠。AFAIK
服务
模块还支持AIX上的
startsrc
/
stopsrc
。但是我认为有一种方法可以将
服务
模块指向这个init脚本。好的,我现在正在使用命令。