背景: 开发过程中发现自己的某个进程被莫名其妙的杀死了,概率性的,不好查。想知道是被哪个进程给误杀了
Linux kernel 版本: Linux imx8qxpmek 4.14.98
audit 版本: audit-3.0.6
首先 Kernel 要支持 audit,要看 linux-3.18.20/kernel 目录下有没有 audit 相关的 .c 文件
audit.c
audit_tree.c
audit_watch.c
auditfilter.c
auditsc.c
有了这些文件就需要修改配置文件,让它们被编译进内核
imx-linux-08/init/Kconfig

make menuconfig 里面选中这3项
[*] Auditing support
[*] HAVE_ARCH_AUDITSYSCALL
[*] Enable system-call auditing support
imx-linux-08/.config

编译 kernel,烧写 uImage 镜像文件到开发板上
下载源码包和补丁文件: audit-audit-3.0.6.tar.gz + audit-audit-3.0.6-cross.patch + audit-audit-3.0.6-sys_stat_h.patch
http://repository.timesys.com/buildsources/a/audit/audit-audit-3.0.6/
注意: audit-audit-3.0.6-cross.patch 是交叉编译所需的补丁文件,audit-audit-3.0.6-sys_stat_h.patch 是解决编译错误的补丁