Как «отслеживать» вновь созданные процессы?

Я знаю, что с ps я вижу список или дерево текущих процессов, запущенных в системе. Но я хочу добиться того, чтобы «следить» за новыми процессами, которые создаются при использовании компьютера.

В качестве аналогии, когда вы используете tail -f чтобы следить за новым содержимым, прикрепленным к файлу или любому входу, я хочу сохранить следующий список процесса, который в настоящее время создается.

Это даже возможно?

  • Процессы в Linux
  • Я убиваю процесс, но возвращаюсь
  • Как ускоряется Linux PIDS
  • Как закрыть окно разбитого приложения?
  • Убейте только один процесс Java
  • Застрявший процесс: это плохой знак?
  • Окна, фреймы, сервер и клиенты Emacs: потоки или процессы?
  • Выполнить команду Nohup с помощью ввода
  • 3 Solutions collect form web for “Как «отслеживать» вновь созданные процессы?”

    Если kprobes включены в ядро, вы можете использовать execsnoop из perf-tools :

    В первом терминале:

     % while true; do uptime; sleep 1; done 

    В другом терминале:

     % git clone https://github.com/brendangregg/perf-tools.git % cd perf-tools % sudo ./execsnoop Tracing exec()s. Ctrl-C to end. Instrumenting sys_execve PID PPID ARGS 83939 83937 cat -v trace_pipe 83938 83934 gawk -vo=1 -v opt_name=0 -v name= -v opt_duration=0 [...] 83940 76640 uptime 83941 76640 sleep 1 83942 76640 uptime 83943 76640 sleep 1 83944 76640 uptime 83945 76640 sleep 1 ^C Ending tracing... 

    Самый простой способ – включить аудит системных вызовов

    Дополнительную информацию см. В следующей ссылке:

    https://serverfault.com/questions/199654/does-anyone-know-a-simple-way-to-monitor-root-process-spawn

    Если вы контролируете все процессы, просто удалите часть -F uid=0

    Журналы записываются в /var/log/audit/audit.log

    По-видимому, вы можете следовать процессу, используя strace . Если вы знаете PID процесса, вы можете сделать следующее:

     strace -o strace-<pid>.out -f -p <pid> 

    Обратите внимание на ключ -f . Это поможет вам следить за вновь созданными процессами, которые являются потомками процесса, PID которого использовался в команде выше. Для получения информации о strace см. Этот вопрос.

    Linux и Unix - лучшая ОС в мире.