好.我发现它是这样的:
setup auditd:
auditctl -w /tmp -k tmpfiles
auditctl -a task,always
然后搜索
ausearch -k tmpfiles|grep "/tmp/tmp."
我得到这样的东西:
然后我得到ppid = 5807并搜索或进程:
ausearch -p 5807
我有类似的东西
time->Thu Nov 12 12:14:34 2015
type=SYSCALL msg=audit(1447323274.234:2547064): arch=c000003e syscall=231 a0=1 a1=3c a2=1 a3=0 items=0 ppid=5772 pid=5807 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=84330 comm="bitdefender-wra" exe="/bin/bash" key=(null)
其中exe =“/ bin / bash”是可执行文件,comm =“bitdefender-wra”是(截断的)命令行.
所以我只是运行:
# locate bitdefender-wra
/usr/lib/MailScanner/bitdefender-wrapper
它是:
LogFile=$(mktemp) || { echo "$0: Cannot create temporary file" >&2; exit 1; }
我改成这个:
LogFile=$(mktemp /tmp/bitdefender.XXXXXXXXXXXX) || { echo "$0: Cannot create temporary file" >&2; exit 1; }
为了验证这是不删除它的临时文件的脚本.下面有rm -f $LogFile,但之前也有退出.
请记住,可能有更好的方法.因此,我将等待某人使用创建tmp文件的进程的命令行找到最佳方法来查找父级.我的方式没有太多的过滤器,并创建了太大的日志.