创建日志程序

创建日志程序

我想创建一个程序来记录用户启动的所有进程并在启动后进行确认。我不想记录所有系统调用和其他守护进程。我最初已经签出auditctlausearch签入了auditd包,acct但它们非常慢,而且它们提供的信息比我需要的多得多。我想要类似的东西ps(报告当前进程的快照)。

目前我在 AMD X2 和 Intel 双核处理器上使用 Ubuntu 12.04 LTS。谢谢!

答案1

由于您没有为程序指定编程语言,我建议使用 Python。有多种方法可以找出当前正在运行的进程:

a) 使用子流程模块调用 ps 然后解析其输出。这并不美观,但是可以办到

b)使用第三方python模块,如psutil或者磅/平方英寸

c) 由于你使用 Linux,你可以查看 /proc 文件系统

import os
pids= [pid for pid in os.listdir('/proc') if pid.isdigit()]
for pid in pids:
    print open(os.path.join('/proc', pid, 'cmdline'), 'rb').read()

相关内容