V-ati confruntat vreodata cu problema ca un proces aleatoriu ruleaza amok si ucide alte procese? Daca da, stii cât de greu este sa gasesti procesul. Exista insa o solutie pentru aceasta: sistem de control.
Trebuie doar sa scrieti un mic script stap ce va va arata procesul:
#!/usr/bin/stap # sigkill.stp # Copyright (C) 2007 Red Hat, Inc., Eugene Teo# # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License version 2 as # published by the Free Software Foundation. # # /usr/share/systemtap/tapset/signal.stp: # [...] # probe signal.send = _signal.send.* # { # sig=$sig # sig_name = _signal_name($sig) # sig_pid = task_pid(task) # pid_name = task_execname(task) # [...] probe signal.send { if (sig_name == "SIGKILL") printf("%s was sent to %s (pid:%d) by %s uid:%d\n", sig_name, pid_name, sig_pid, execname(), uid()) }
Executa apoi: stap sigkill.stp.