linux 进程的权限与用户权限及文件属性的关系
2013-12-07 13:50
435 查看
对于一个进程,它每次打开、创建或者删除一个文件时,内核就要对该进程进行文件访问权限测试,而在对具体某个文件进行测试时,还需要测试其对目录(也就是文件路径)进行权限测试。比如要修改/usr/include/stdio.h,需要对/、/usr和/usr/include这三个目录进行权限测试,保证有对这三个目录的执行权限(目录索引需要执行权限,读权限只是显示)。
进行访问权限测试的过程如下【涉及文件所有者(st_uid和st_gid)和进程的有效ID(有效用户ID及有效组ID)】:
(1)若进程有效用户ID为0(超级用户),则有所有权限
(2)若进程的有效用户ID=文件所有者ID,表明该进程拥有该文件,此时有适当的访问权限(在访问时用O_RDONLY,O_WRONLY等标识,文件所有者的访问权限被设置),则允许访问。
(3)若进程的有效组ID 等于文件的组ID,同2.
(4)若其他用户适当的访问权限被设置,也允许访问。
但是这些除了超级用户外,都是通过设置访问权限位去改变进程对文件的访问权限,比如sudo gedit /usr/include/stdio.h,本身如果单独使用gedit /usr/include/stdio.h是只读,不能进行编辑,但加上sudo后,就改变了访问权限位,拥有了文件修改权限。
设置文件访问权限位相当于一个壳,通过给进程加壳而改变了进程的权限范围。
在Linux中,access函数可以进行去壳测试,查看进程本来面目的权限,原型为:int access ( const char *path, int mode);就是看path文件是否有mode权限。
举例:
进程A没有打开/etc/shadow的权限,通过设置文件访问权限位(可以执行前加sudo),能够正确执行open函数,但使用access测试时不通过。
本文转自:http://www.cnblogs.com/yangshaoning/archive/2010/12/12/1903924.html
更多相关:
进程描述符及任务结构:http://blog.csdn.net/neil_lee_/article/details/17187393
linux进程描述符task_struct详解:http://blog.csdn.net/neil_lee_/article/details/17187435
进行访问权限测试的过程如下【涉及文件所有者(st_uid和st_gid)和进程的有效ID(有效用户ID及有效组ID)】:
(1)若进程有效用户ID为0(超级用户),则有所有权限
(2)若进程的有效用户ID=文件所有者ID,表明该进程拥有该文件,此时有适当的访问权限(在访问时用O_RDONLY,O_WRONLY等标识,文件所有者的访问权限被设置),则允许访问。
(3)若进程的有效组ID 等于文件的组ID,同2.
(4)若其他用户适当的访问权限被设置,也允许访问。
但是这些除了超级用户外,都是通过设置访问权限位去改变进程对文件的访问权限,比如sudo gedit /usr/include/stdio.h,本身如果单独使用gedit /usr/include/stdio.h是只读,不能进行编辑,但加上sudo后,就改变了访问权限位,拥有了文件修改权限。
设置文件访问权限位相当于一个壳,通过给进程加壳而改变了进程的权限范围。
在Linux中,access函数可以进行去壳测试,查看进程本来面目的权限,原型为:int access ( const char *path, int mode);就是看path文件是否有mode权限。
举例:
进程A没有打开/etc/shadow的权限,通过设置文件访问权限位(可以执行前加sudo),能够正确执行open函数,但使用access测试时不通过。
本文转自:http://www.cnblogs.com/yangshaoning/archive/2010/12/12/1903924.html
更多相关:
进程描述符及任务结构:http://blog.csdn.net/neil_lee_/article/details/17187393
linux进程描述符task_struct详解:http://blog.csdn.net/neil_lee_/article/details/17187435
相关文章推荐
- Linux学习笔记之——用户、用户组、文件属性权限、目录概念
- 10-Linux基础入门(八)-文件和目录的属性及权限之用户与组和时间戳基础
- Linux中对于文件属性、权限的设定以及和用户的联系
- Linux的用户、组、文件、权限的关系
- 用户ID,组ID 文件访问权限,文件与进程属性浅析
- 用户ID,组ID 文件访问权限,文件与进程属性浅析
- linux文件属性、文件类型、linux用户和权限、软链接和硬链接
- 0220自学Linux_逻辑理解用户进程权限相关+理解文件内各字段(passwd,shadow,group)
- Linux的命令改变文件属性及权限问题
- Linux 文件属性和默认权限
- linux 文件/目录的属性及权限
- linux 修改目录文件权限,目录文件所属用户,用户组
- Linux文件属性、权限、umask、find
- linux 如何改变文件属性与权限
- Linux基础-管理用户和文件权限
- linux下文件与目录权限关系
- Linux root用户分配文件权限…
- 【Linux学习笔记】Linux_02_用户权限,文件权限
- linux查看文件/目录 大小(du)、权限(ls ll),用户及组(user/group)增、删、改 (chmod/chown/chgrp)
- Linux权限详解:用户、用户组及文件权限