为什么进程有UID/GID?

为什么进程有UID/GID?

进程参数中的 UID 和 GID 有什么意义?

有 EUID、RUID、SUID(对于 Linux FSUID)确定进程权限。我无法想象 UID/GID 在这种情况下有什么用。

举个例子,如果我在一个终端中运行$ passwd,并在其他打印过程参数中运行,那么我会得到以下输出

$ ps -Ao uid,euid,ruid,suid,cmd | grep passwd
0     0  1000     0 passwd

看来 UID 已更改为 EUID。这种行为有什么特殊原因吗?

答案1

$ ps -Ao uid,euid,ruid,suid,cmd | grep passwd
0     0  1000     0 passwd

uidprocps/Linux 中的格式说明符和euid选择器ps是完全相同的;uid是 的别名euid

man ps

STANDARD FORMAT SPECIFIERS
       ...
       euid        EUID      effective user ID (alias uid).
       ...
       uid         UID       see euid.  (alias euid).

相关内容