为什么在使用绝对path时auditd只logging`echo`?

信息

在Centos 7上运行auditd 2.6.5。

我的规则文件包含:

-a exit,always -F arch=b64 -F auid=0 -S execve -k root_action -a exit,always -F arch=b32 -F auid=0 -S execve -k root_action 

当我运行which echo ,我得到/usr/bin/echo

问题

当我运行echo "asd" ,没有任何东西被login到/var/log/audit/audit.log 。 但是,当我运行/usr/bin/echo "asd"我看到一个事件被logging下来。 为什么不使用绝对path不工作?

echo是一个shell内build的。 / bin / echo是一个二进制文件。

键入type echowhich echo看到的差异。

当你给它的完整path,你告诉它使用二进制文件,而不是壳内置。