CentOS-文件的权限管理
权限
文件的归属
**普通文件查看归属 – ll 文件名 例 : ls -l /test/a.txt
**目录查看归属 – ll - d 目录名 例 :ll - d /test
ls -l a.txt
-rw- r-- r-- . 1 root tom 12 7月 13 09:05
第一个 - 忽略 rw- 表示属主权限
r-- 表示属组权限
r-- 表示其他人的权限
root 表示属主,即文件的所有者
tom 表示属组,即文件的所属组
修改文件的归属
属主的修改:chown 用户名 路径文件
属组的修改:chown . 组名 路径文件
chown : 组名 路径文件
chown 用户名 . 组名 文件 //直接修改文件的属主和属组
- R 作用于目录,递归其下子文件 // chown - R /test
文件的基本权限 — UGO 权限
注:ugo 权限不能限制root账户
U - user ,属主
G - group,属组
O - other,其他人
判断 指定用户 针对 指定文件 的身份
1.是不是所有者(属主)--如果是,身份就是所有者
如果不是,继续进行下一步判断
2.是不是所属组(属组)--查看 指定用户 是否为 指定用户文件 所属组的成员
如果是,身份为所属组
如果不是,则身份为其他人
普通文件 目录
r - read 读 4 cat,more... ls
w - write 写 2 vi / vim 创建、删除、修改文件名
x - execute 执行 1 执行进程 进入目录(基础权限)
改变文件的权限
方法一:
chmod [][][][] [ugoa]【+-=】[rwx] 文件
chmod u-x /test 将test目录属主权限 在原来基础上去掉 x 权限
chmod g+x /test 将test目录属组在原来基础上增加 w 权限
chmod o = rx /test 将test目录其他人权限设置为 r x权限 (r-x)亦可
chmod a = rwx /share 将share目录的权限设置为 rwx rwx rwx
chmod u+w,g-x /share 将属主 加 w 在share目录文件中
将属组 减 x 在share目录文件中
方法二: 用数字改变文件的权限
chmod 644 a.txt 将a.txt权限改为 rw - r - - r - -
chmod 755 /test 将test目录权限改为 rwx r - x r- x
r -- 4
w -- 2 eg : chown 644 /a.txt
x -- 1
- - - | 0 | 644 | rw- r-- r– | ||
- - x | 1 | 640 | rw- r-- — | ||
- w - | 2 | 755 | rwx r-x r-x | ||
- w x | 3 | 750 | rwx r-x — | ||
r - - | 4 | 620 | rw- -r- — | ||
r - x | 5 | ||||
r w - | 6 | ||||
r w x | 7 | ||||
一个用户,既是文件的所有者,又是所属组,以权限高的 则 属主
UMASK 掩码 (默认022)
- 最大权限基础上减去掩码 ,数字组合出现 r/w/x ,出现的就删掉
- 目录基础 777 rwx rwx rwx
- 文件基础 666 rw- rw- rw-
例 : 掩码umask 0 3 5 则目录文件权限,普通文件权限是多少?
0 — 3 -wx 5 r - x
目录 7 7 7 rwx rwx rwx **** rwx r – -w- *** 742
文件 6 6 6 rw- rw- rw- **** rw- r-- -w- **** 642
注:目录可以直接减去,得到权限值
文件 减去奇数时 需要+1 (因为减去了x ,所以要 + 1)
减去偶数时直接减 , 得到权限数值