ok. Eu achei assim:
configuração auditd:
auditctl -w /tmp -k tmpfiles
auditctl -a task,always
Em seguida, pesquise
ausearch -k tmpfiles|grep "/tmp/tmp."
Eu recebo algo assim:
Então eu recebo ppid = 5807 e pesquiso ou o processo:
ausearch -p 5807
Eu tenho algo como
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)
Onde exe="/ bin / bash" é o executável e comm="bitdefender-wra" é a linha de comando (truncada).
Então, simplesmente corro:
# locate bitdefender-wra
/usr/lib/MailScanner/bitdefender-wrapper
E aí está:
LogFile=$(mktemp) || { echo "$0: Cannot create temporary file" >&2; exit 1; }
Eu mudo isso para:
LogFile=$(mktemp /tmp/bitdefender.XXXXXXXXXXXX) || { echo "$0: Cannot create temporary file" >&2; exit 1; }
Para verificar se este é o script que não exclui seus arquivos temporários. Há rm -f $LogFile
abaixo, mas também há saída antes disso.
Tenha em mente que pode haver uma maneira melhor. Então, vou esperar por alguém para dar o melhor caminho para encontrar o pai com a linha de comando de um processo que está criando arquivos tmp. Meu caminho não tem muitos filtros e cria logs muito grandes.