实际用户ID
实际组ID
| 我们实际是谁(即执行程序的用户) |
有效用户ID
有效组ID
附加组ID
| 用于文件存取许可权检查 |
保存设置-用户-ID
保存设置-组-ID
| 由exec函数保存 |
setuid位是让普通用户可以以root用户的角色运行只有root帐号才能运行的程序或命令。
因此当程序设置了setid权限位时,普通用户会临时变成root权限,但实际用户任然是原来的mike。
调用setid使进程成长为一个会话组长,setid调用成功后,进程成为新的会话组长和进程组长,并与原来的登陆会话和进程组脱离,由于会话过程对控制终端的独占性,进程同时与控制终端脱离。
这也是在创建daemon程序时,经常用到的一个步骤。