Linux文件权限
33574977dr-xr-x---. 2 root root 196 Mar 5 17:21 root
8639 drwxr-xr-x 25 root root 620 Mar 21 16:35 run
37278 lrwxrwxrwx. 1 root root 8 Mar 4 20:30 sb
drwxr-xr-x
分三组:
前三个字符是表示用户(属主)权限位user(用户),代表字符为u
中三个字符是表示用户组权限位group(用户组),代表字符为g
后三个字符是其他用户权限位others(其他用户),代表字符为o
同一组的三个字符权限也是有位置的
第一个字符的位置是读的权限位
第二个字符的位置是写的权限位
第三个字符的位置是执行的权限位
权限的详细说明
1、可读r:表示具有读取、浏览文件内容(即读取文件实体block)的权限
2、可写w:表示具有新增、修改、删除文件内容的权限
3、可执行x:表示具有执行文件的权限
对于可读r需要注意:
a:如果没有可读r配合,那么使用vi编辑文件时会提示无法编辑,可以使用echo等命令进行重定向或追加
b:删除文件或创建文件的权限是受父目录的权限控制的。文件本身的可写权限w和文件是否被删除和改名无关
对于可执行x需要注意:
a:首先文件的本身要能够执行(命令或脚本)
b:如果是普通用户,同时还需要具备可读r的权限才能执行文件
c:root用户只要有可执行x的权限就能执行文件
文件删除的原理:
目录的权限
可读r:表示具有浏览目录下面文件及子目录名的权限
可写w:表示具有增加、删除、或修改目录内文件的权限(没有x的配合无法删除或创建文件)
可执行x:表示具有进入目录的权限
Linux权限的两种表现形式:
1、数字表示法(r——4;w——2;x——1;- ——0)
2、字符表示法
chmod(设置更改文件和目录权限的命令)
1)、说明:chmod命令是用来改变文件或目录权限的=命令,但只有文件的属主和超级管理员root能够执行这个命令
2)、语法格式
chmod [option] [mode] [fie]
chmod [选项] [模式] [文件或目录]
3)、参数
-R 递归处理指定目录以及目录下的所有文件
chown
chown 用户. 用户组 文件 (这里的点可以用:代替)
安全权限的临界点:
文件不想被修改被执行:644
目录不想被修改(删除、移动、创建)被执行(进入):755
控制默认权限:(umask)
基于文件:默认位权限规则
从666计算
Umask都为偶数,默认权限用减法
Umask有奇数,默认权限用减法,然后奇数位加1
基于目录:默认权限规则
从777计算
默认权限用减法
linux特殊权限:
1、suid
suid位通过s字符标识。
存在于基本权限的用户权限位的x权限对应的位置
如果用户权限对应的x权限位上有x权限,则suid就用小写s标识
suid的s对应的数字权限为4,完整权限用八进制4000表示
2、sgit
sgit为同样是通过s字符标识
sgit位存在于基本群贤的用户组权限位的x权限对应的位置
如果用户组权限位对应的x权限上有x权限,则sgit用小写s标识
sgit的s对应的数字权限为2,完整的权限用八进制2000表示
3、sticky(粘滞位)
sticky(粘滞)位通过T表示
存在于基本权限的其他用户位对应的x权限上
如果其他用户位的x权限上有x权限,则sticky位用小写t标识
对应的数字权限是1,完整的权限用八进制1000表示
被设置了sticky位权限的文件会显示黑字绿底