【发布时间】:2014-06-14 09:30:18
【问题描述】:
我需要将 rpm 中文件的权限设置为命名管道。
我们使用一些花哨的 rpm 魔法部署配置文件(%postun、%triggerin 和 %triggerun 用于 mpve 旧配置文件并在需要时恢复 m)。 作为 Icinga 分布式设置配置的一部分,我想在 rpm 安装过程中更改文件的权限,但我找不到需要提供给“%attr”宏的值。
苍蝇是:
ll /var/spool/icinga/cmd/icinga.cmd
prw-rw-rw- 1 icinga icingacmd 84 Apr 28 13:40 /var/spool/icinga/cmd/icinga.cmd
编辑:
实际问题是我有 icinga.cmd 权限 prw-rw---,但我需要它是 prw-rw-rw-。 实际文件是由具有上述权限的 icinga 进程创建的。我试图自动化 chmod,包括一个检查 FIFO 的模式和权限是否良好的循环,但是有一系列我没有预见到的复杂情况,我将在这里放弃这个想法
【问题讨论】:
-
作为命名管道的属性不是权限属性。问题是如何在 RPM 中创建命名管道,还是如何将命名管道的属性设置为 %files 部分的一部分?
-
如果我明白你在问什么,我想你在找
%attr(0666, icinga, icingacmd) /var/spool/icinga/cmd/icinga.cmd?如果没有,请忽略此评论。另一方面,应用程序可能会在启动时重新创建命名文件,并且权限可能不同。 -
只有当命名管道不存在时,应用才会重新创建命名管道。我正在考虑修改 nsca 守护程序的 rpm 以使其与 icinga 用户一起运行。