乐闻世界logo
搜索文章和话题

Linux 文件权限系统如何工作,包括读、写、执行权限以及特殊权限(SUID、SGID、Sticky Bit)的作用是什么?

2月17日 23:37

Linux 文件权限系统是 Unix-like 操作系统的核心安全机制之一。每个文件和目录都有三组权限:所有者(owner)、所属组(group)和其他用户(others)。每组权限包含读(r=4)、写(w=2)和执行(x=1)三种基本权限。

权限表示方法有两种:符号表示法(如 rwxr-xr-x)和数字表示法(如 755)。符号表示法中,r 表示读权限,w 表示写权限,x 表示执行权限。数字表示法中,读权限为 4,写权限为 2,执行权限为 1,通过相加得到组合权限值。

常用权限命令包括:

  • chmod:修改文件权限,如 chmod 755 filename 或 chmod u+x filename
  • chown:修改文件所有者,如 chown user:group filename
  • chgrp:修改文件所属组,如 chgrp group filename

特殊权限包括:

  • SUID(Set User ID):当执行设置了 SUID 的程序时,程序会以文件所有者的权限运行,而不是执行者的权限
  • SGID(Set Group ID):对于文件,执行时以文件所属组的权限运行;对于目录,新创建的文件会继承目录的所属组
  • Sticky Bit:对于目录,只有文件所有者和 root 才能删除目录中的文件,即使其他用户有写权限

理解文件权限对于系统安全至关重要,需要根据最小权限原则合理设置。

标签:Linux