Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Unix中,如何注册以了解进程何时启动?_Unix_Process_Exec_Fork - Fatal编程技术网

在Unix中,如何注册以了解进程何时启动?

在Unix中,如何注册以了解进程何时启动?,unix,process,exec,fork,Unix,Process,Exec,Fork,假设我想要一个后台进程,它在每次启动或退出进程时都会写入文件。任何流程(尽管我最感兴趣的是那些带有图形组件的流程) 我不希望经常轮询正在运行的进程列表。我的想法是,我必须用自己的副本替换exec或fork,但我不确定这是怎么做到的。或者有更好的方法吗?我不清楚您到底想要什么,但听起来像是用户记帐或运行审计。 问题是这些都是特定于UNIX风格的。请告诉我们你有什么操作系统 是否要为所有用户提供此信息?一群人 一些UNIX风格允许您监视文件系统活动(如LinuxInotify),因此,如果您知道用户

假设我想要一个后台进程,它在每次启动或退出进程时都会写入文件。任何流程(尽管我最感兴趣的是那些带有图形组件的流程)


我不希望经常轮询正在运行的进程列表。我的想法是,我必须用自己的副本替换exec或fork,但我不确定这是怎么做到的。或者有更好的方法吗?

我不清楚您到底想要什么,但听起来像是用户记帐或运行审计。 问题是这些都是特定于UNIX风格的。请告诉我们你有什么操作系统

是否要为所有用户提供此信息?一群人


一些UNIX风格允许您监视文件系统活动(如LinuxInotify),因此,如果您知道用户将提前运行哪些代码,您可以尝试监视特定文件以执行。这可能比实施审计或某种会计更容易。我们需要更多的细节才能真正有所帮助。

我认为在不修改内核的情况下,没有任何简单的方法可以监控这一点。感谢您的回复!我有Ubuntu10.10,但我希望它尽可能的通用。这将是针对单个用户的。一般来说,我只想知道进程何时启动,何时退出。我在原始文章中给出的示例应该足够一般,以满足我的需要:每当进程启动时,我都会将时间戳及其映像名记录到某个文件中。无论何时退出都是一样的。