linux 上程序被隨機kill掉,如何監測和查詢;誰殺了我的程序;Who sends a SIGKILL to my process mysteriously on ubuntu server
阿新 • • 發佈:2022-02-24
今天跑實驗,發現程序被隨機kill。諮詢了伺服器上的其他同學,他們說之前也發生過,一直存在。看來可能有可能不是我自己程式的原因,只能自己動手解決了。
Linux 審計系統:audit
在 Who sends a SIGKILL to my process mysteriously on ubuntu server 中,提到一個簡單的方法,使用audit。
安裝很簡單:sudo apt install auditd
啟動服務並檢視狀態: systemctl enable auditd.service; systemctl restart auditd.service
然後通過auditctrl新增規則: auditctl -a exit,always -F arch=b64 -S kill -F a1=9
測試:
啟動然後kill掉Python程式; 檢視日誌,即可發現kill發起的程式和使用者;
sudo ausearch -sc kill
time->Thu Feb 24 04:00:08 2022 type=PROCTITLE msg=audit(1645675208.403:201): proctitle="htop" type=OBJ_PID msg=audit(1645675208.403:201): opid=40099 oauid=1016 ouid=1016 oses=12951 obj==unconfined ocomm="nvtop" type=SYSCALL msg=audit(1645675208.403:201): arch=c000003e syscall=62 success=yes exit=0 a0=9ca3 a1=9 a2=c1 a3=8 items=0 ppid=45939 pid=40129 auid=1016 uid=1016 gid=1016 euid=1016 suid=1016 fsuid=1016 egid=1016 sgid=1016 fsgid=1016 tty=pts4 ses=18035 comm="htop" exe="/usr/bin/htop" subj==unconfined key=(null)
下面開始守株待兔了, 再跑一下程式,找到被kill的原因;
參考連結:
https://documentation.suse.com/sles/12-SP4/html/SLES-all/cha-audit-comp.html
https://www.cnblogs.com/xybaby/p/8098229.html
保持更新;cnblogs.com/xuyaowen;
https://github.com/yaowenxu