在RHEL7&&CENTOS7时代,默认的服务通过systemd控制,并通过systemctl命令完成启停。但是并不是所有的服务都可以完美的通过systemctl来控制,比如今天要提到的Auditd

编辑audit.rules添加规则后,当然要通过restart服务来重启生效,但是通过

 systemctl restart auditd

就会报如下错误:

[root@abc]#  systemctl restart auditd
Failed to restart auditd.service: Operation refused, unit auditd.service may be requested by dependency only

因为我并没有编辑过/usr/lib/systemd/system/auditd.service 下的文件,所以不是人为修改导致服务重启失败,经过GOOGLE大神的帮助,终于找到了如下答复:原文如下:

The audit daemon must be controlled from the service command. It will decide which commands can be sent to systemctl and which ones are supported by legacy actions. So, you should do:

service auditd restart

Unfortunately, it has to be this way.


既然Steve Grubb 都不能解决这个问题,看来有些古老应用还是需要service 这种传统方式才能解决呀