RUID EUID SUID的一些解释和例子
2013-09-06 21:18
381 查看
RUID EUID SUID的一些解释和例子
[root@host ~]# id
uid=0(root) gid=0(root) euid=502(oracle) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel)
[root@host ~]# cat /etc/passwd | head -n 1
root:x:0:0:root:/root:/bin/bash
[root@host ~]#
以不带参数的id的输出为例:
RUID(Real UID)等于uid,等于用户在/etc/passwd里面的第3列,可用命令id -ru查看.
EUID(Effective UID)表示用户当前的有效身份.如果root的euid为502(oracle),就表示现在root正以oracle的身份在运行,可用命令id -u查看.
SUID(Saved UID)表示保存的euid,当用户在运行suid程序时(如passwd),保存运行前的euid,并在程序结束前,将保存的euid再设置回来.
一个如果改变euid的例子:
(http://superuser.com/questions/56884/change-euid-of-running-process)
[root@user-desktop ~]# id
uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel) context=user_u:system_r:unconfined_t
[root@user-desktop ~]# gdb /bin/bash $$
GNU gdb Fedora (6.8-27.el5)
# cut copyright & license statements
This GDB was configured as "x86_64-redhat-linux-gnu"...
# cut some initialization output
0x00000036b0a99335 in waitpid () from /lib64/libc.so.6
(gdb) call seteuid(500)
$1 = 0
(gdb) quit
The program is running. Quit anyway (and detach it)? (y or n) y
Detaching from program: /bin/bash, process 29017
[root@user-desktop ~]# id
uid=0(root) gid=0(root) euid=500(user) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel) context=user_u:system_r:unconfined_t
RUID EUID SUID的解释
(http://www.cyberciti.biz/tips/linux-more-on-user-id-password-and-group-management.html)
RUID : Identify the real user, normal user cannot change it.
EUID : Decides access level, normal user can change it.
SUID : Saves the EUID, normal user cannot change it.
SUID与passwd命令的例子
(http://blog.csdn.net/guosha/article/details/2679334)
man setuid
[root@host ~]# id
uid=0(root) gid=0(root) euid=502(oracle) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel)
[root@host ~]# cat /etc/passwd | head -n 1
root:x:0:0:root:/root:/bin/bash
[root@host ~]#
以不带参数的id的输出为例:
RUID(Real UID)等于uid,等于用户在/etc/passwd里面的第3列,可用命令id -ru查看.
EUID(Effective UID)表示用户当前的有效身份.如果root的euid为502(oracle),就表示现在root正以oracle的身份在运行,可用命令id -u查看.
SUID(Saved UID)表示保存的euid,当用户在运行suid程序时(如passwd),保存运行前的euid,并在程序结束前,将保存的euid再设置回来.
一个如果改变euid的例子:
(http://superuser.com/questions/56884/change-euid-of-running-process)
[root@user-desktop ~]# id
uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel) context=user_u:system_r:unconfined_t
[root@user-desktop ~]# gdb /bin/bash $$
GNU gdb Fedora (6.8-27.el5)
# cut copyright & license statements
This GDB was configured as "x86_64-redhat-linux-gnu"...
# cut some initialization output
0x00000036b0a99335 in waitpid () from /lib64/libc.so.6
(gdb) call seteuid(500)
$1 = 0
(gdb) quit
The program is running. Quit anyway (and detach it)? (y or n) y
Detaching from program: /bin/bash, process 29017
[root@user-desktop ~]# id
uid=0(root) gid=0(root) euid=500(user) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel) context=user_u:system_r:unconfined_t
RUID EUID SUID的解释
(http://www.cyberciti.biz/tips/linux-more-on-user-id-password-and-group-management.html)
RUID : Identify the real user, normal user cannot change it.
EUID : Decides access level, normal user can change it.
SUID : Saves the EUID, normal user cannot change it.
SUID与passwd命令的例子
(http://blog.csdn.net/guosha/article/details/2679334)
man setuid
相关文章推荐
- 两主机互ping的一些例子及其解释
- 两主机互ping的一些例子及其解释
- 两主机互ping的一些例子及其解释
- 一些 NSArray 的基本操作代码例子
- 穿线二叉树(注释了一些有用的解释)
- IOS中的table的写法的一些解释
- 关于使用PRO*C编程的一些简单说明和例子
- eclipse调试一个struts2例子时遇到的一些问题总结
- Java中前期绑定和后期绑定的一些经典例子
- 代码里写控件的一些例子
- iphone 刷机遇到的一些名词解释
- java基础入门-for循环的一些特殊例子
- java中的泛型的一些常见例子
- javascript一些小例子总结,持续更新...
- spring.net (2)环境搭建 对(1)例子的解释和扩充
- AJAX:success,error,complete,beforeSend使用例子及解释
- 一个例子解释“数组名"的含义
- EPR和SAP的一些名词解释
- linux 经典的例子 解释 dup dup2 文件描述符重定向函数 输入输出重定向
- 一些常用ABAP program 的例子(转)