【发布时间】:2021-07-27 05:49:30
【问题描述】:
当系统调用指向某个特定文件时,我想拦截每个写入系统调用并修改写入系统调用的数据,否则执行原始写入系统调用。
现在我可以从那里修改 write 系统调用。另外,我想要 syscall 指向的文件的名称,如何从 write syscall 中的文件描述符参数中获取它。
我尝试了 LD_PRELOAD 技巧,但它仅适用于库调用,不适用于系统调用。 我正在使用 ubuntu 18.04。
【问题讨论】:
-
你究竟为什么要这样做?
-
我想将日期和 PID 附加到每个应用程序生成的每个日志中,然后再将它们存储在 var/log 目录中的日志文件中。
-
嗯,这肯定是用锤子敲碎坚果。
标签: linux-kernel operating-system system-calls kernel-module