Linux  文件权限
Linux系统是一个多用户操作系统,其文件是根据不同的用户来划分的。在多用户系统中,用户系统数据的安全十分重要,每个文件或目录都包含访问权限,这些权限决定了哪些用户能访问和如何访问这些文件和目录。
1.文件权限的表示
在终端窗口中,执行ls –l命令,显示当前目录文件的详细信息,如图4-11所示。
图4-11  文件权限
从上图可以看出,文件信息由10个字符组成,第一个字符表示文件的类型,而文件类型表示符后面的9个字符就表示了文件的权限。文件的权限总体来说可分为三种:读(R)、写(W)和执行(X),三种权限组合成9个字符来表示文件或目录的使用权限。
r  读取限,定义该文件是否可读,对于目录来说,它表示是否可列出目录中的内容。
w  写入权限,定义该文件是否可以写或可修改。对目录来说,该权限表示是否能对目录进行修改。如果没有写权限,用户无法对目录进行删除、重命名或创建新文件等操作。
x  执行权限,定义能否执行文件。对目录来说,该权限用于确定是否有权在该目录中进行搜索,或者执行该目录下的文件。
由r、w和x的顺序三个为一组,共分三组来表示文件或目录的权限,如果每组中不满三个字符,就使用“-”代替,如drwx-----x。
这三组9个字符分别指定了不同的权限,其中前3个字符表示文件或目目录的所有者的权限;
接下来3个字符表示文件所有者在组的权限;最后3个字符表示该组以外所有用户访问权限,如下面范例如示:
-rw--r--r-  表示该文件是普通文件,并且所有者的权限为rw(读和写),文件所有者所在组的权限为r(只读),组外的所有用户对该文件的权限为r(只读)。
drwx--x--x  表示目录文件,且目录所有者具有进入目录并在能读取目录和写入目录的权限,而其他用户仅能进入该目录而无法读取任何信息。
-rwx------  表示该普通文件对所有者具有读取、写入和执行的权限,对其他任何用户都无任何权限。
2.特殊权限
在Linux系统中,文件权限还不止这些,还有一些文件具有特殊权限。特殊权限会拥有某些“特权”,因而用户如果无特殊需要,不要启用这些权限,避免在安全方面出现问题。这些特殊权限是如下所示:
S或s(SUID,SetUID)  可执行文件如果启用了这个权限,就能任意存取该文件的所有者能使用的全部系统资源。
S或s(SGID,SetGID)  文件启用这个权限,其效果和SUID相同,只不过将文件所有者更改为所有者所有组。该文件就可以任意存取整个用户组中所有可使用的系统资源。
T或t(Sticky)  如果目录文件启用了该权限,那么该目录下所有的文件仅允许其拥有者去操作,从而可以避免其他用户的干扰。如果其他文件启用了该权限,则该文件的最后更新时间将不会改变。
上述三个特殊权限是区分大小写的,这与之前r、w和x有所不同,这是因为SUID、SGID和Sticky只占用x的位置来表示。如果同时开启执行权限和SUID、SGID和Sticky,则权限表示符是小写的:
-rwsr-sr-t 1 root root 4096  3月 17:30 xusen
修改文件权限的linux命令
如果要关闭执行权限,则表示字符会变成大写:
-
rwSr-Sr-T 1 root root 4096  3月 17:30 xusen