一个文件都有一个所有者, 表示该文件是谁创建的. 同时, 该文件还有一个组编号, 表示该文件所属的组, 一般为文件所有者所属的组.
如果是一个可执行文件, 那么在执行时, 一般该文件只拥有调用该文件的用户具有的权限. 而setuid, setgid 可以来改变这种设置.
setuid: 设置使文件在执行阶段具有文件所有者的权限. 典型的文件是 /usr/bin/passwd. 如果一般用户执行该文件, 则在执行过程中, 该文件可以获得root权限, 从而可以更改用户的密码.
setgid: 该权限只对目录有效. 目录被设置该位后, 任何用户在此目录下创建的文件都具有和该目录所属的组相同的组.
sticky bit: 该位可以理解为防删除位. 一个文件是否可以被某用户删除, 主要取决于该文件所属的组是否对该用户具有写权限. 如果没有写权限, 则这个目录下的所有文件都不能被删除, 同时也不能添加新的文件. 如果希望用户能够添加文件但同时不能删除文件, 则可以对文件使用sticky bit位. 设置该位后, 就算用户对目录具有写权限, 也不能删除该文件.
下面说一下如何操作这些标志:
操作这些标志与操作文件权限的命令是一样的, 都是 chmod. 有两种方法来操作,
1) chmod u+s temp -- 为temp文件加上setuid标志. (setuid 只对文件有效)
chmod g+s tempdir -- 为tempdir目录加上setgid标志 (setgid 只对目录有效)
chmod o+t temp -- 为temp文件加上sticky标志 (sticky只对文件有效)
2) 采用八进制方式. 对一般文件通过三组八进制数字来置标志, 如 666, 777, 644等. 如果设置这些特殊标志, 则在这组数字之外外加一组八进制数字. 如 4666, 2777等. 这一组八进制数字三位的意义如下,
abc
a - setuid位, 如果该位为1, 则表示设置setuid
b - setgid位, 如果该位为1, 则表示设置setgid
c - sticky位, 如果该位为1, 则表示设置sticky
设置完这些标志后, 可以用 ls -l 来查看. 如果有这些标志, 则会在原来的执行标志位置上显示. 如
rwsrw-r-- 表示有setuid标志
rwxrwsrw- 表示有setgid标志
rwxrw-rwt 表示有sticky标志
那么原来的执行标志x到哪里去了呢? 系统是这样规定的, 如果本来在该位上有x, 则这些特殊标志显示为小写字母 (s, s, t). 否则, 显示为大写字母 (S, S, T)
- 浏览: 135091 次
- 性别:
- 来自: 大连
最新评论
-
datawarehouse:
datawarehouse 写道ngix 淘宝是基于这个开发了 ...
解密淘宝网的开源架构 -
datawarehouse:
ngix 淘宝是基于这个开发了一个自己的webserver吧。 ...
解密淘宝网的开源架构 -
eyelock:
我运行报错,,楼主能解答一下G,对swing不熟。
raphi ...
假期没事,写了个90行的俄罗斯方块,Java实现,史上最小巧 -
lostsky_11:
楼主写出例子了么?物理碰撞部分可能跟你说的差不多渲染部分可以搜 ...
Where is my water 游戏算法 -
xouou_53320:
都是牛人
假期没事,写了个90行的俄罗斯方块,Java实现,史上最小巧
相关推荐
特殊权限可以在文件或目录上设置,如setuid允许任何用户以文件所有者的权限运行该文件,setgid则使得在目录下创建的新文件继承目录的属组,sticky bit常用于共享目录,确保只有文件所有者能删除自己的文件。...
对于文件,这三个权限分别对应查看文件内容、修改文件内容和作为程序执行。对于目录,读取权限允许列出目录中的内容,写入权限允许创建、删除或修改目录内的文件,而执行权限则是进入目录。 Linux权限的表示方式...
SetUID允许用户执行文件时获取文件所有者的权限,SetGID则允许用户执行文件时获取文件所属组的权限,而sticky bit则用于在公共目录中防止用户删除或重命名他人文件。 ACL(Access Control Lists,访问控制列表)...
特殊权限如setuid、setgid和sticky bit在特定情况下非常有用。setuid允许一个文件被执行时,以文件所有者的权限运行,而不论实际的执行用户是谁。setgid则使文件在执行时继承其所在目录的组权限。sticky bit在目录上...
除了基本的用户权限,还有特殊权限位,如Set-User-ID(SUID)、Set-Group-ID(SGID)和 Sticky Bit。SUID允许非所有者以所有者的权限运行程序,这在执行如`passwd`这样的系统命令时非常有用。SGID则允许非组成员以组...
3. SBIT( Sticky Bit ):SBIT主要应用于目录,它保持文件在特定目录中的存留,即使文件所有者没有写权限。典型应用是/tmp目录,确保即使文件所有者删除了文件,其他用户也无法删除它。 至于进程相关ID,主要有PID...
文件权限由三个部分组成:所有者权限、组权限和其他人权限。每种权限都有读取(r)、写入(w)和执行(x)三种类型。 - **读取(r)**: 允许用户读取文件内容或列出目录内容。 - **写入(w)**: 允许用户修改文件内容或向目录...
特殊权限包括Set UID (SUID)、Set GID (SGID) 和 Sticky Bit (SBIT)。SUID允许一个非所有者的用户以所有者的权限执行文件,通常用于需要提升权限的命令,如`su`或`passwd`。SGID则使进程继承目录的组权限,常用于...
SBIT(Sticky Bit)是一种特殊权限,只针对目录有效,对于文件已经没有效果了。SBIT 的主要功能是: * 当用户对于此目录具有 w,x 权限,即具有写入的权限 * 当用户在该目录下创建文件或目录时,仅有自己与 root 才...
用户名与UID之间、组群名与GID之间的对应关系存储在三个关键文件中:`/etc/passwd`、`/etc/shadow`和`/etc/group`。`/etc/passwd`文件包含了用户的用户名、密码(在现代系统中通常为加密形式)、用户主目录、登录...
在 Linux 中,还有三种特殊权限:SUID、SGID 和 Sticky Bit。 * SUID(Set User ID):如果设置了 SUID 的可执行文件被执行,文件将以所有者的身份来运行。 * SGID(Set Group ID):意思同 SUID,设置了 SGID 的可...
特殊权限如SUID(Set User ID)、SGID(Set Group ID)和粘滞位(Sticky Bit)提供了额外的权限控制: 1. SUID:当一个可执行文件被设置了SUID位,运行时将以文件所有者的权限运行,如`chmod u+s file`。 2. SGID:...
- **Sticky Bit (粘滞位)**:保护目录,即使设置了w权限,用户也只能删除自己创建的文件。 5. **文件访问控制列表(ACL)** - ACL提供了一种更灵活的权限控制方式,可以为单个用户或组设置特定的权限。 以上就是...
- **Sticky bit**:用于保护文件或目录不被非所有者删除或修改。 通过以上详细介绍,我们可以看出CentOS用户和组权限管理的重要性以及如何通过命令行工具有效地管理用户账户和权限。合理地配置用户权限不仅可以增强...
- **特殊权限**:包括Set UID、Set GID和Sticky Bit,它们可以在特定情况下更改文件的默认行为。例如,Set UID允许文件被以拥有者的身份执行,而不是执行者的身份。 #### 四、多用户环境下的登录与切换 Linux支持...
这里的权限表示方法为三个一组:第一个三位代表所有者的权限,第二个三位代表所属组的权限,第三个三位代表其他用户的权限。“rwxr--r--”表示所有者可以读、写和执行该文件,所属组的用户只能读,而其他用户也仅能...
特别的权限如SUID(Set-User-ID)、SGID(Set-Group-ID)和Sticky Bit,分别用于在执行文件时暂时改变权限,帮助执行特定任务。文件系统加密如eCryptfs,可以在保持用户便利性的同时增强安全性,加密元数据存储在...
粘贴位(sticky bit)通常用于目录上,它确保只有文件的拥有者才能删除或重命名自己的文件,即使其他人有写权限也不行。 - **设置方法**:使用 `chmod` 命令,例如,`chmod o+t directory`。 #### 7. 文件或目录的...
特殊权限如SUID(Set-User-ID)、SGID(Set-Group-ID)和Sticky Bit在特定情况下增强权限控制。`setfacl`和`getfacl`命令用于设置和查看更复杂的ACL权限,这允许对文件和目录进行更精细的访问控制。 总的来说,掌握...
强制位(Set-User-ID, Set-Group-ID)和冒险位(Sticky Bit)是传统Unix/Linux权限系统中的扩展,主要应用于可执行文件。强制位可以使得一个普通用户在执行具有该位的程序时,能够以该程序所有者的身份运行,这在...