获取内核空间中当前用户的用户名



我正在尝试实现一个打印你好"当前用户名"的系统调用。我尝试使用 getpwuid(getuid()),但没有工作,因为我无法包含 pwd.h 或 unistd.h 或 sys/types.h。我目前不知道如何做这项工作。

Linux 内核对用户名没有概念;它只知道用户标识符 (UID)。

从 uid 到用户名的映射包含在用户数据库中,该数据库存储为文件/etc/passwd。您需要解析此文件以获取提取用户名。

最新更新