设置用户ID位和设置组ID位


首先需要说明的是这两个位标识都在st_mode中,而文件的模式却在文件的inode中

inode包含了描述一个文件的所有信息,它包括了以下几个内容:

1 文件大小

2文件mode,

                       文件mode包含了:1/文件对各个用户的访问权限(分别对应所属用户/所属组/其它)

                                                         2/文件设置用户ID位

                                                         3/文件设置组ID位

3文件数据块的实际磁盘块位置

4文件的atime

5文件的mtime

6文件的ctime

7文件的用户ID

8文件的组ID


一般来说,进程中所创建的新文件的用户ID与运行进程的用户ID相同,文件或文件夹的权限取决于文件创建屏蔽位和open函数的mode参数


但是,新文件的组ID取决于它所在的目录的设置 -组-ID位是否设置。如果该目录的这一位已经设置,则新文件的组 ID设置为目录的组 ID;否则新文件的组ID设置为进程的有效组ID。

如果文件设置了其 设置-用户-ID位,那么当执行此文件时,进程具有文件所有者的权限
例如 passwd 命令,在unix中,只有root用户才能修改/etc/passwd文件,但是由于passwd程序设置了 设置-用户-ID位,所以不管以什么用户运行它,进程都具有root权限。


关于 设置-用户-ID位和 设置-组-ID位,也包含在st_mode中,可以通过 S_ISUID和 S_ISGID来测试。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值