6

我正在做一些 Linux 模块开发,限制我只能使用内核可用的库,并且我想获取与我的模块的用户名交互的用户的用户名。又名他们的“whoami”。我的模块实际上是围绕系统调用...我可以从内核空间中的 current->pid 获取 pid。有没有办法,也许,使用 pid 来追踪 pid 所属的用户?还是另一种更简单的方法?

谢谢

4

1 回答 1

4

您可以使用filp_open函数从内核打开/etc/passwd文件。接下来,您需要使用file_operations来读取文件:

struct file * file = filp_open(...);
file->f_op->read(file, ...);

阅读文件内容可能有助于UID -> username翻译。

于 2012-10-19T08:38:39.427 回答