一、权限概念
当在终端使用ls指令时,如下图
类型权限 硬链接数 属主 用户组 大小 时间 文件名
每行的第一个字符含义如下
- | 普通文件 |
d | 文件夹文件 |
l | 软链接文件 |
c | 字符设备文件 |
b | 块设备文件 |
p | 管道文件 |
s | socket文件 |
剩余9位,3位一组,分别代表不同身份对于该文件或者文件夹的权限
第一组:文件所有者(属主)对文件的权限
第二组:属组对文件的权限
第三组:其他用户对文件的权限
一个用户可以属于多个用户组,一个用户组可以包含多个用户
umask:权限掩码,权限为mode&(~umask),bash下默认新建文件时,mode为666
在每一组中,字符含义如下
字符 | 含义 | 数字表示(二进制/十进制) |
---|---|---|
r | 读权限 | 100 / 4 |
w | 写权限 | 10 / 2 |
x | 执行权 | 1 / 1 |
二、权限更改
可用chmod(change mode)指令修改文件权限
- 数字方式
chmod 775 abc.txt //将该文件所属者对于该文件的操作权限设置为7,即1+2+3,即x,w,r三个权限都有,将同组用户对于该文件的权限也同样设置成7全部权限,对于其他用户设置成了5,即5=1+4=x+r两个权限
- 单独改变三组权限中的某一组
chmod u/g/o/a +/- r/w/x 用户名
u:拥有者
g:文件所属同组用户
o:其他用户
a:以上三种所有
如chmod ug+w o-w 123.txt
把写权限给所有者及其同组用户,其他用户没有写权限