当前位置: 技术问答>linux和unix
进程的附加组id
来源: 互联网 发布时间:2016-06-21
本文导语: 最近刚开始看《unix环境高级编程》,有几个问题不明白: 1)进程的附加组id是进程有效用户的附加组还是实际用户的附加组? 2)对目录文件的读、写、执行该怎样理解,为什么要在一个目录下建一个新目录还必须...
最近刚开始看《unix环境高级编程》,有几个问题不明白:
1)进程的附加组id是进程有效用户的附加组还是实际用户的附加组?
2)对目录文件的读、写、执行该怎样理解,为什么要在一个目录下建一个新目录还必须同时具有写和执行权限?
3)用write函数对文件进行写操作,为什么不改变文件的最近一次访问时间?写文件不属于访问吗?
4)文件的主设备号和次设备号分别指什么?看了书上的一个例子,给出的主设备号是4/0,4/1,次设备号是3/4,3/3不明白是什么意思?
5)/dev/hda是物理卷吗?
1)进程的附加组id是进程有效用户的附加组还是实际用户的附加组?
2)对目录文件的读、写、执行该怎样理解,为什么要在一个目录下建一个新目录还必须同时具有写和执行权限?
3)用write函数对文件进行写操作,为什么不改变文件的最近一次访问时间?写文件不属于访问吗?
4)文件的主设备号和次设备号分别指什么?看了书上的一个例子,给出的主设备号是4/0,4/1,次设备号是3/4,3/3不明白是什么意思?
5)/dev/hda是物理卷吗?
|
我最近也在看apue,估计你初学,推荐你再同时看鸟哥私房菜基础篇,里面对基础知识的解释很到位。看得十分之爽。
我回答你第二个问题:文件有读,写,执行三个权限。1 读:表示具有读取目录结构清单的权限。例如用ls命令查看就属于要有读权限的。 2 写:表示可以更改目录结构。 3 执行 表示是否能够进入该目录。 请注意如果不能进入目录是不能对目录进行修改的,所以我必须先能进入这个目录,然后才修改。记住这点,我想就不能理解。 至于为什么要这样,我想在unix操作系统设计能找到答案,我正在研究。呵呵
我回答你第二个问题:文件有读,写,执行三个权限。1 读:表示具有读取目录结构清单的权限。例如用ls命令查看就属于要有读权限的。 2 写:表示可以更改目录结构。 3 执行 表示是否能够进入该目录。 请注意如果不能进入目录是不能对目录进行修改的,所以我必须先能进入这个目录,然后才修改。记住这点,我想就不能理解。 至于为什么要这样,我想在unix操作系统设计能找到答案,我正在研究。呵呵
|
1) 附加组ID
由于一个用户可以属于多个组,因此,除了 有效组ID 外,进程还有 0 到 NGROUPS_MAX 个决定文件访问权限的 附加组ID 。
进程的 用户ID 和 组ID 在创建时从父进程继承而来。它们的值来自于口令文件 /etc/passwd 和 组文件 /etc/group ,或者另外的机制。也即来自于用户的用户ID和组ID,并且在 session 一开始就被设置。此后,它们被遗传给 session 内的每一个进程,默认值设置为 session leader 的用户ID和组ID,这即为 实际用户ID 和 实际组ID。由默认值,有效用户ID 和 有效组ID 在执行时被设置为 实际用户ID 和 实际组ID 。
2. linux 是以文件作为基元的,每个档案都需要拥有被访问的权限。
3. write肯定属于访问了。
4. 主设备号主要是告诉给内核的设备管理部分,以便你在打开设备时,内核帮你找到你的驱动例程
次设备号主要是给你驱动使用的,驱动自己根据这个次设备号来决定到底对哪个端口进行操作等,比如你一个驱动要管理两个串口,这个次设备号就用来决定你到底要操作哪个串口
5. /dev/hda是一个设备文件,分区,也是一个入口。
由于一个用户可以属于多个组,因此,除了 有效组ID 外,进程还有 0 到 NGROUPS_MAX 个决定文件访问权限的 附加组ID 。
进程的 用户ID 和 组ID 在创建时从父进程继承而来。它们的值来自于口令文件 /etc/passwd 和 组文件 /etc/group ,或者另外的机制。也即来自于用户的用户ID和组ID,并且在 session 一开始就被设置。此后,它们被遗传给 session 内的每一个进程,默认值设置为 session leader 的用户ID和组ID,这即为 实际用户ID 和 实际组ID。由默认值,有效用户ID 和 有效组ID 在执行时被设置为 实际用户ID 和 实际组ID 。
2. linux 是以文件作为基元的,每个档案都需要拥有被访问的权限。
3. write肯定属于访问了。
4. 主设备号主要是告诉给内核的设备管理部分,以便你在打开设备时,内核帮你找到你的驱动例程
次设备号主要是给你驱动使用的,驱动自己根据这个次设备号来决定到底对哪个端口进行操作等,比如你一个驱动要管理两个串口,这个次设备号就用来决定你到底要操作哪个串口
5. /dev/hda是一个设备文件,分区,也是一个入口。
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。