在linux中uid就是你login的那個帳戶,而euid就是目前有效的uid (effective uid),舉例來說如果某一程式有設setuid的話,那麼當你去執行那隻程式當下你的euid就會是該程式的owner id.
------get_euid.c------
#include
#include
#include
void main()
{
printf (" current euid is %d \n",geteuid());
}
------ Code End ------
#gcc -o get_euid get_euid.c
#chmod 4701 get_euid
-rws-----x 1 root root 11633 2007-08-08 04:20 geteuid
#su abc123
$id
uid=1001(abc123) gid=100(users) groups=100(users)
$who am i
root pts/0 Aug 8 04:04 (192.168.1.1)
$whoami
abc123
$./get_euid
current euid is 0
(因為get_euid這隻程式設定setuid所以執行該程式時你的身份暫時變成root)
Ref:
http://fanqiang.chinaunix.net/a1/b3/20020510/060200218_b.html
http://www.cs.nctu.edu.tw/~yslin/library/linuxc/function/07.html
- Aug 08 Wed 2007 04:29
Linux uid/euid
全站熱搜
留言列表
發表留言