是否可以在Linux内核的系统调用中创建用户,就像useradd
命令一样?
我在某个地方看到系统调用无法使用exec
系列,是真的吗?
答案 0 :(得分:3)
在内核中,用户通过他们的ID(一个数字)来标识,这是内核知道用户的唯一信息。
就内核而言,不需要创建用户:要使进程拥有不同的用户,只需使用不同的号码调用setuid()。
用户ID与其他信息(名称,主目录等)之间的映射完全在用户空间中完成。并且用户信息存储在/etc/passwd
之类的文件中只是一种约定;有些系统以不同的方式使用用户(例如,Android为每个应用程序提供了自己的用户ID)。
如果您确实想要执行用户模式程序,请致电call_usermodehelper()。